Steps to reproduce

Navigating to `/events/#/registrations` triggers an error:

Error: Call to a member function id() on null in Drupal\recurring_events_registration\Entity\Registrant->urlRouteParameters() (line 380 of /app/web/modules/contrib/recurring_events/modules/recurring_events_registration/src/Entity/Registrant.php)

#0 /app/web/core/lib/Drupal/Core/Entity/EntityBase.php(174): Drupal\recurring_events_registration\Entity\Registrant->urlRouteParameters('edit-form')
#1 /app/web/core/lib/Drupal/Core/Entity/EntityListBuilder.php(136): Drupal\Core\Entity\EntityBase->toUrl('edit-form')
#2 /app/web/core/lib/Drupal/Core/Entity/EntityListBuilder.php(112): Drupal\Core\Entity\EntityListBuilder->getDefaultOperations(Object(Drupal\recurring_events_registration\Entity\Registrant))
#3 /app/web/core/modules/views/src/Plugin/views/field/EntityOperations.php(131): Drupal\Core\Entity\EntityListBuilder->getOperations(Object(Drupal\recurring_events_registration\Entity\Registrant))
#4 /app/web/core/modules/views/src/Plugin/views/field/FieldPluginBase.php(1158): Drupal\views\Plugin\views\field\EntityOperations->render(Object(Drupal\views\ResultRow))
#5 /app/web/core/modules/views/views.theme.inc(238): Drupal\views\Plugin\views\field\FieldPluginBase->advancedRender(Object(Drupal\views\ResultRow))
#6 [internal function]: template_preprocess_views_view_field(Array, 'views_view_fiel...', Array)
#7 /app/web/core/lib/Drupal/Core/Theme/ThemeManager.php(287): call_user_func_array('template_prepro...', Array)
#8 /app/web/core/lib/Drupal/Core/Render/Renderer.php(422): Drupal\Core\Theme\ThemeManager->render('views_view_fiel...', Array)
#9 /app/web/core/lib/Drupal/Core/Render/Renderer.php(201): Drupal\Core\Render\Renderer->doRender(Array, false)
#10 /app/web/core/modules/views/src/Plugin/views/field/FieldPluginBase.php(1747): Drupal\Core\Render\Renderer->render(Array)
#11 /app/web/core/modules/views/src/Plugin/views/style/StylePluginBase.php(779): Drupal\views\Plugin\views\field\FieldPluginBase->theme(Object(Drupal\views\ResultRow))
#12 [internal function]: Drupal\views\Plugin\views\style\StylePluginBase->elementPreRenderRow(Array)
#13 /app/web/core/lib/Drupal/Core/Security/DoTrustedCallbackTrait.php(101): call_user_func_array(Array, Array)
#14 /app/web/core/lib/Drupal/Core/Render/Renderer.php(772): Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_ren...', 'exception', 'Drupal\\Core\\Ren...')
#15 /app/web/core/lib/Drupal/Core/Render/Renderer.php(363): Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array)
#16 /app/web/core/lib/Drupal/Core/Render/Renderer.php(201): Drupal\Core\Render\Renderer->doRender(Array, false)
#17 /app/web/core/modules/views/src/Plugin/views/style/StylePluginBase.php(718): Drupal\Core\Render\Renderer->render(Array)
#18 /app/web/core/modules/views/src/Plugin/views/style/StylePluginBase.php(584): Drupal\views\Plugin\views\style\StylePluginBase->renderFields(Array)
#19 /app/web/core/modules/views/src/Plugin/views/style/StylePluginBase.php(475): Drupal\views\Plugin\views\style\StylePluginBase->renderGrouping(Array, Array, true)
#20 /app/web/core/modules/views/src/Plugin/views/display/DisplayPluginBase.php(2170): Drupal\views\Plugin\views\style\StylePluginBase->render(Array)
#21 /app/web/core/modules/views/src/ViewExecutable.php(1560): Drupal\views\Plugin\views\display\DisplayPluginBase->render()
#22 /app/web/core/modules/views/src/Plugin/views/display/Page.php(199): Drupal\views\ViewExecutable->render()
#23 /app/web/core/modules/views/src/ViewExecutable.php(1657): Drupal\views\Plugin\views\display\Page->execute()
#24 /app/web/core/modules/views/src/Element/View.php(81): Drupal\views\ViewExecutable->executeDisplay('event_registran...', Array)
#25 [internal function]: Drupal\views\Element\View::preRenderViewElement(Array)
#26 /app/web/core/lib/Drupal/Core/Security/DoTrustedCallbackTrait.php(101): call_user_func_array(Array, Array)
#27 /app/web/core/lib/Drupal/Core/Render/Renderer.php(772): Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_ren...', 'exception', 'Drupal\\Core\\Ren...')
#28 /app/web/core/lib/Drupal/Core/Render/Renderer.php(363): Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array)
#29 /app/web/core/lib/Drupal/Core/Render/Renderer.php(201): Drupal\Core\Render\Renderer->doRender(Array, false)
#30 /app/web/core/lib/Drupal/Core/Render/MainContent/HtmlRenderer.php(241): Drupal\Core\Render\Renderer->render(Array, false)
#31 /app/web/core/lib/Drupal/Core/Render/Renderer.php(564): Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}()
#32 /app/web/core/lib/Drupal/Core/Render/MainContent/HtmlRenderer.php(242): Drupal\Core\Render\Renderer->executeInRenderContext(Object(Drupal\Core\Render\RenderContext), Object(Closure))
#33 /app/web/core/lib/Drupal/Core/Render/MainContent/HtmlRenderer.php(132): Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object(Symfony\Component\HttpFoundation\Request), Object(Drupal\Core\Routing\CurrentRouteMatch))
#34 /app/web/core/lib/Drupal/Core/EventSubscriber/MainContentViewSubscriber.php(90): Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object(Symfony\Component\HttpFoundation\Request), Object(Drupal\Core\Routing\CurrentRouteMatch))
#35 [internal function]: Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object(Symfony\Component\HttpKernel\Event\ViewEvent), 'kernel.view', Object(Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher))
#36 /app/web/core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php(142): call_user_func(Array, Object(Symfony\Component\HttpKernel\Event\ViewEvent), 'kernel.view', Object(Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher))
#37 /app/vendor/symfony/http-kernel/HttpKernel.php(164): Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object(Symfony\Component\HttpKernel\Event\ViewEvent), 'kernel.view')
#38 /app/vendor/symfony/http-kernel/HttpKernel.php(81): Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object(Symfony\Component\HttpFoundation\Request), 1)
#39 /app/web/core/lib/Drupal/Core/StackMiddleware/Session.php(58): Symfony\Component\HttpKernel\HttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#40 /app/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(48): Drupal\Core\StackMiddleware\Session->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#41 /app/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(48): Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#42 /app/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(51): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#43 /app/vendor/stack/builder/src/Stack/StackedHttpKernel.php(23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#44 /app/web/core/lib/Drupal/Core/DrupalKernel.php(709): Stack\StackedHttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#45 /app/web/index.php(19): Drupal\Core\DrupalKernel->handle(Object(Symfony\Component\HttpFoundation\Request))
#46 {main}

Comments

Jacqui.Tenderwolf created an issue. See original summary.

chrisla’s picture

I believe this is related to issues I continue to have noted here - https://www.drupal.org/project/recurring_events/issues/3278860

When old events get deleted, I think their Registrants are sometimes left in the system and that causes the Registrants page to break, searching for the events that no longer exist.

jacqui.tenderwolf’s picture

StatusFileSize
new15.42 KB
muriqui’s picture

Component: Recurring Events (Main module) » Recurring Events Registration (Submodule)