QuantSearchPage - TypeError: rawurlencode(): Argument #1 ($string) must be of type string

Created on 19 January 2024, over 1 year ago
Updated 20 January 2024, over 1 year ago

Problem/Motivation

While testing for πŸ“Œ Create Quant 1.5.5 release Postponed , I created a page in D9.5 with latest dev branch and got this when going to page:

The website encountered an unexpected error. Please try again later.
TypeError: rawurlencode(): Argument #1 ($string) must be of type string, Drupal\quant_search\Entity\QuantSearchPage given in rawurlencode() (line 58 of core/lib/Drupal/Component/Utility/UrlHelper.php).
rawurlencode(Object) (Line: 58)
Drupal\Component\Utility\UrlHelper::buildQuery(Array) (Line: 691)
Drupal\Core\Menu\MenuTreeStorage->loadByRoute('entity.quant_search_page.testingsearch', Array, 'account') (Line: 336)
Drupal\Core\Menu\MenuLinkManager->loadLinksByRoute('entity.quant_search_page.testingsearch', Array, 'account') (Line: 134)
Drupal\Core\Menu\MenuActiveTrail->getActiveLink('account') (Line: 105)
Drupal\Core\Menu\MenuActiveTrail->doGetActiveTrailIds('account') (Line: 71)
Drupal\Core\Menu\MenuActiveTrail->resolveCacheMiss('account') (Line: 149)
Drupal\Core\Cache\CacheCollector->get('account') (Line: 92)
Drupal\Core\Menu\MenuActiveTrail->getActiveTrailIds('account') (Line: 35)
Drupal\Core\Cache\Context\MenuActiveTrailsCacheContext->getContext('account') (Line: 123)
Drupal\Core\Cache\Context\CacheContextsManager->convertTokensToKeys(Array) (Line: 317)
Drupal\Core\Render\RenderCache->createCacheID(Array) (Line: 66)
Drupal\Core\Render\RenderCache->get(Array) (Line: 109)
Drupal\Core\Render\PlaceholderingRenderCache->get(Array) (Line: 273)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 581)
Drupal\Core\Template\TwigExtension->renderVar(Array) (Line: 43)
__TwigTemplate_1ee520845fdc4db0a0bdaefda32b697d->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('core/profiles/demo_umami/themes/umami/templates/layout/page.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('page', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 86)
__TwigTemplate_6a96a1cbcc6ece9ebe9ab78c0dda6347->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('core/profiles/demo_umami/themes/umami/templates/classy/layout/html.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('html', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 162)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 163)
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: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
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: 61)
Drupal\quant_purger\StackMiddleware\UrlRegistrar->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 718)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)

Steps to reproduce

  1. Enable all quant modules
  2. Create a search page
  3. Go to the search page
  4. Results: Fatal error above
  5. Expected results: Search page works as expected

Proposed resolution

Debug and fix.

Remaining tasks

  • Debug
  • Update code
  • Review and test
  • Commit :)

User interface changes

No fatal error :)

API changes

Data model changes

πŸ› Bug report
Status

Fixed

Version

1.0

Component

Code

Created by

πŸ‡ΊπŸ‡ΈUnited States Kristen Pol Santa Cruz, CA, USA

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Production build 0.71.5 2024