apigee / apigee-api-catalog-drupal

Manage your API catalog within Drupal's content management approach
https://www.drupal.org/project/apigee_api_catalog
GNU General Public License v2.0
17 stars 16 forks source link

Drupal logged in user error after upgrading apigee modules #187

Closed gayan-cm closed 1 year ago

gayan-cm commented 2 years ago

I have updated Drupal core and the following apigee modules. currently, I'm getting the following error when trying to log in to the system.

Drupal 8.9 -> Drupal 9.3 drupal/apigee_api_catalog: "^2.6" drupal/apigee_edge: "^2.0" drupal/apigee_m10n: "^1.12"

Error message

Symfony\Component\Routing\Exception\RouteNotFoundException: Route "view.api_catalog_admin.page_1" does not exist

Symfony\Component\Routing\Exception\RouteNotFoundException: Route "view.api_catalog_admin.page_1" does not exist. in Drupal\Core\Routing\RouteProvider->getRouteByName() (line 208 of core/lib/Drupal/Core/Routing/RouteProvider.php). Drupal\Core\Routing\UrlGenerator->getRoute('view.api_catalog_admin.page_1') (Line: 130) Drupal\Core\Routing\UrlGenerator->getPathFromRoute('view.api_catalog_admin.page_1', Array) (Line: 68) Drupal\Core\Render\MetadataBubblingUrlGenerator->getPathFromRoute('view.api_catalog_admin.page_1', Array) (Line: 799) Drupal\Core\Url->getInternalPath() (Line: 136) Drupal\Core\Utility\LinkGenerator->generate('API catalog', Object) (Line: 95) Drupal\Core\Render\Element\Link::preRenderLink(Array) call_user_func_array(Array, Array) (Line: 100) Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. Support for this callback implementation is deprecated in 8.8.0 and will be removed in Drupal 9.0.0. See https://www.drupal.org/node/2966725', 'silenced_deprecation', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 781) Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 372) Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 200) Drupal\Core\Render\Renderer->render(Array) (Line: 501) Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 117) __TwigTemplate_1a000f671d4cc5bffe1f0485519f6b2214387b1d55162283576c104dddccc932->getmenu_links(Array, Object, 0) (Line: 60) __TwigTemplate_1a000f671d4cc5bffe1f0485519f6b2214387b1d55162283576c104dddccc932->doDisplay(Array, Array) (Line: 455) Twig\Template->displayWithErrorHandling(Array, Array) (Line: 422) Twig\Template->display(Array) (Line: 434) Twig\Template->render(Array) (Line: 64) twig_render_template('core/modules/toolbar/templates/menu--toolbar.html.twig', Array) (Line: 384) Drupal\Core\Theme\ThemeManager->render('menu__toolbar', Array) (Line: 431) Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 200) Drupal\Core\Render\Renderer->render(Array, 1) (Line: 156) Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 573) Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 157) Drupal\Core\Render\Renderer->renderPlain(Array) (Line: 115) Drupal\toolbar\Controller\ToolbarController::preRenderGetRenderedSubtrees(Array) call_user_func_array(Array, Array) (Line: 100) Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. Support for this callback implementation is deprecated in 8.8.0 and will be removed in Drupal 9.0.0. See https://www.drupal.org/node/2966725', 'silenced_deprecation', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 781) Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 372) Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 200) Drupal\Core\Render\Renderer->render(Array, 1) (Line: 156) Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 573) Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 157) Drupal\Core\Render\Renderer->renderPlain(Array) (Line: 299) toolbar_get_rendered_subtrees() (Line: 324) _toolbar_get_subtrees_hash() (Line: 167) toolbar_toolbar() call_user_func_array('toolbar_toolbar', Array) (Line: 403) Drupal\Core\Extension\ModuleHandler->invokeAll('toolbar') (Line: 81) Drupal\toolbar\Element\Toolbar::preRenderToolbar(Array) call_user_func_array(Array, Array) (Line: 100) Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. Support for this callback implementation is deprecated in 8.8.0 and will be removed in Drupal 9.0.0. See https://www.drupal.org/node/2966725', 'silenced_deprecation', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 781) Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 372) Drupal\Core\Render\Renderer->doRender(Array) (Line: 444) Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 200) Drupal\Core\Render\Renderer->render(Array) (Line: 501) Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 98) __TwigTemplate_ced2ecc177f672eae8887be6081287e5ac8475fdad853d5b76bca56bf8f7db1f->doDisplay(Array, Array) (Line: 455) Twig\Template->displayWithErrorHandling(Array, Array) (Line: 422) Twig\Template->display(Array) (Line: 434) Twig\Template->render(Array) (Line: 64) twig_render_template('profiles/contrib/apigee_devportal_kickstart/themes/custom/apigee_kickstart/templates/layout/html.html.twig', Array) (Line: 384) Drupal\Core\Theme\ThemeManager->render('html', Array) (Line: 431) Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 200) Drupal\Core\Render\Renderer->render(Array) (Line: 147) Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 573) Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 148) Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90) Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object) call_user_func(Array, Object, 'kernel.view', Object) (Line: 111) Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch('kernel.view', Object) (Line: 156) Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 68) Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 57) Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 47) Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 106) Drupal\page_cache\StackMiddleware\PageCache->pass(Object, 1, 1) (Line: 85) Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 47) Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 52) Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23) Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 708) Drupal\Core\DrupalKernel->handle(Object) (Line: 19)

phdhiren commented 2 years ago

@gayan-cm

For apigee_api_catalog module, Can you confirm which was the earlier version?

The view api_catalog_admin is imported as a part of standard installation unless you've removed it in between. You can import the views.view.api_catalog_admin.yml via views backend.

gayan-cm commented 2 years ago

@phdhiren the earlier version of apigee_api_catalog module is 8.x-1.2.

And my current issue is I can't access the backend due to the above error.

gayan-cm commented 2 years ago

@phdhiren, Do you have any suggestions on upgrading the following modules from Drupal 8 to Drupal 9? drupal/apigee_api_catalog: "^2.6" drupal/apigee_edge: "^2.0" drupal/apigee_m10n: "^1.12"

Every time I upgrade the API Catalog module I cannot access the backend due to the following error. Symfony\Component\Routing\Exception\RouteNotFoundException: Route "view.api_catalog_admin.page_1" does not exist

phdhiren commented 2 years ago

@gayan-cm

Can you first upgrade apigee_api_catalog composer require drupal/apigee_api_catalog:2.2 -W and run the update.php Next, you can update the apigee_api_catalog to the latest version and run update.php

At the end if you upgrade Drupal to the latest 9.3, then I believe it should work.

Please use composer when you upgrade the module/drupal core to match the required dependencies.

phdhiren commented 1 year ago

Closing the issue and assuming the above solution worked, feel free to reopen if required.