- 🇧🇪Belgium borisson_ Mechelen, 🇧🇪
Since this is in the 2.x version of facets and it is regarding ajax, I'm going to close this issue. We are only supporting ajax with views in facets 3.x.
I have a view setup with ajax enabled, and include the Facets blocks with views. Whenever the view is reloaded with ajax
Browser Console error:
Uncaught Object { message: "\nAn AJAX HTTP error occurred.\nHTTP Result Code: 500\nDebugging information follows.\nPath: /islandora-advanced-search-ajax-blocks\nStatusText: 500 Service unavailable (with message)\nResponseText: The website encountered an unexpected error. Please try again later.", name: "AjaxError", stack: "@https://base_url/core/misc/ajax.js?v=9.3.12:110:32\n@https://base_url/core/misc/ajax.js?v=9.3.12:674:3\n" }
Drupal Log error:
Error: Call to undefined method Symfony\Component\HttpFoundation\RequestStack::getMainRequest() in Drupal\facets\Plugin\facets\facet_source\SearchApiDisplay::create() (line 120 of /var/www/test_site/web/modules/contrib/facets/src/Plugin/facets/facet_source/SearchApiDisplay.php)
#0 /var/www/test_site/web/core/lib/Drupal/Core/Plugin/Factory/ContainerFactory.php(21): Drupal\facets\Plugin\facets\facet_source\SearchApiDisplay::create()
#1 /var/www/test_site/web/core/lib/Drupal/Component/Plugin/PluginManagerBase.php(83): Drupal\Core\Plugin\Factory\ContainerFactory->createInstance()
#2 /var/www/test_site/web/modules/contrib/facets/src/Entity/Facet.php(731): Drupal\Component\Plugin\PluginManagerBase->createInstance()
#3 /var/www/test_site/web/modules/contrib/facets/src/Plugin/Block/FacetBlock.php(78): Drupal\facets\Entity\Facet->getFacetSource()
#4 /var/www/test_site/web/core/modules/block/src/BlockViewBuilder.php(171): Drupal\facets\Plugin\Block\FacetBlock->build()
#5 [internal function]: Drupal\block\BlockViewBuilder::preRender()
#6 /var/www/test_site/web/core/lib/Drupal/Core/Security/DoTrustedCallbackTrait.php(101): call_user_func_array()
#7 /var/www/test_site/web/core/lib/Drupal/Core/Render/Renderer.php(772): Drupal\Core\Render\Renderer->doTrustedCallback()
#8 /var/www/test_site/web/core/lib/Drupal/Core/Render/Renderer.php(363): Drupal\Core\Render\Renderer->doCallback()
#9 /var/www/test_site/web/core/lib/Drupal/Core/Render/Renderer.php(201): Drupal\Core\Render\Renderer->doRender()
#10 /var/www/test_site/web/core/lib/Drupal/Core/Render/Renderer.php(157): Drupal\Core\Render\Renderer->render()
#11 /var/www/test_site/web/core/lib/Drupal/Core/Render/Renderer.php(564): Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}()
#12 /var/www/test_site/web/core/lib/Drupal/Core/Render/Renderer.php(158): Drupal\Core\Render\Renderer->executeInRenderContext()
#13 /var/www/test_site/web/modules/contrib/advanced_search/src/Controller/AjaxBlocksController.php(158): Drupal\Core\Render\Renderer->renderPlain()
#14 [internal function]: Drupal\advanced_search\Controller\AjaxBlocksController->respond()
#15 /var/www/test_site/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(123): call_user_func_array()
#16 /var/www/test_site/web/core/lib/Drupal/Core/Render/Renderer.php(564): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
#17 /var/www/test_site/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(124): Drupal\Core\Render\Renderer->executeInRenderContext()
#18 /var/www/test_site/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext()
#19 /var/www/test_site/vendor/symfony/http-kernel/HttpKernel.php(158): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
#20 /var/www/test_site/vendor/symfony/http-kernel/HttpKernel.php(80): Symfony\Component\HttpKernel\HttpKernel->handleRaw()
#21 /var/www/test_site/web/core/lib/Drupal/Core/StackMiddleware/Session.php(58): Symfony\Component\HttpKernel\HttpKernel->handle()
#22 /var/www/test_site/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(48): Drupal\Core\StackMiddleware\Session->handle()
#23 /var/www/test_site/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(106): Drupal\Core\StackMiddleware\KernelPreHandle->handle()
#24 /var/www/test_site/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(85): Drupal\page_cache\StackMiddleware\PageCache->pass()
#25 /var/www/test_site/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(48): Drupal\page_cache\StackMiddleware\PageCache->handle()
#26 /var/www/test_site/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(51): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle()
#27 /var/www/test_site/vendor/stack/builder/src/Stack/StackedHttpKernel.php(23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle()
#28 /var/www/test_site/web/core/lib/Drupal/Core/DrupalKernel.php(708): Stack\StackedHttpKernel->handle()
#29 /var/www/test_site/web/index.php(19): Drupal\Core\DrupalKernel->handle()
#30 {main}
Change line 120 of SearchApiDisplay.php at /web/modules/contri/facets/src/Plugin/facets/facet_source from:
version_compare(\Drupal::VERSION, '9.3', '>=') ? $request_stack->getMainRequest() : $request_stack->getMasterRequest(),
to
version_compare(\Drupal::VERSION, '9.3', '>=') ? $request_stack->getMasterRequest() : $request_stack->getMainRequest(),
I included a patch as well.
Thanks.
Closed: won't fix
2.0
Code
Not all content is available!
It's likely this issue predates Contrib.social: some issue and comment data are missing.
Since this is in the 2.x version of facets and it is regarding ajax, I'm going to close this issue. We are only supporting ajax with views in facets 3.x.