Symfony Exception

No route found for "GET https://staging.buerkle.de/it/es/bombas/productos"

Symfony\Component\HttpKernel\Exception\ NotFoundHttpException

  1.             if ($referer $request->headers->get('referer')) {
  2.                 $message .= sprintf(' (from "%s")'$referer);
  3.             }
  4.             throw new NotFoundHttpException($message$e);
  5.         } catch (MethodNotAllowedException $e) {
  6.             $message sprintf('No route found for "%s %s": Method Not Allowed (Allow: %s)'$request->getMethod(), $request->getUriForPath($request->getPathInfo()), implode(', '$e->getAllowedMethods()));
  7.             throw new MethodNotAllowedHttpException($e->getAllowedMethods(), $message$e);
  8.         }
  1.         $this->priority $dispatcher->getListenerPriority($eventName$this->listener);
  2.         $e $this->stopwatch->start($this->name'event_listener');
  3.         try {
  4.             ($this->optimizedListener ?? $this->listener)($event$eventName$dispatcher);
  5.         } finally {
  6.             if ($e->isStarted()) {
  7.                 $e->stop();
  8.             }
  9.         }
  1.         foreach ($listeners as $listener) {
  2.             if ($stoppable && $event->isPropagationStopped()) {
  3.                 break;
  4.             }
  5.             $listener($event$eventName$this);
  6.         }
  7.     }
  8.     /**
  9.      * Sorts the internal list of listeners for the given event by priority.
  1.         } else {
  2.             $listeners $this->getListeners($eventName);
  3.         }
  4.         if ($listeners) {
  5.             $this->callListeners($listeners$eventName$event);
  6.         }
  7.         return $event;
  8.     }
  1.         try {
  2.             $this->beforeDispatch($eventName$event);
  3.             try {
  4.                 $e $this->stopwatch->start($eventName'section');
  5.                 try {
  6.                     $this->dispatcher->dispatch($event$eventName);
  7.                 } finally {
  8.                     if ($e->isStarted()) {
  9.                         $e->stop();
  10.                     }
  11.                 }
  1.      */
  2.     private function handleRaw(Request $requestint $type self::MAIN_REQUEST): Response
  3.     {
  4.         // request
  5.         $event = new RequestEvent($this$request$type);
  6.         $this->dispatcher->dispatch($eventKernelEvents::REQUEST);
  7.         if ($event->hasResponse()) {
  8.             return $this->filterResponse($event->getResponse(), $request$type);
  9.         }
  1.     {
  2.         $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  3.         $this->requestStack->push($request);
  4.         try {
  5.             return $this->handleRaw($request$type);
  6.         } catch (\Exception $e) {
  7.             if ($e instanceof RequestExceptionInterface) {
  8.                 $e = new BadRequestHttpException($e->getMessage(), $e);
  9.             }
  10.             if (false === $catch) {
  1.             $subRequest->attributes->add($request->attributes->all());
  2.             $subRequest->setLocale($defaultLocale);
  3.             $subRequest->attributes->set('virtual_translation'true);
  4.             $subRequest->attributes->set('virtual_locale'$locale);
  5.             $fallbackResponse $this->httpKernel->handle($subRequest);
  6.             if (!$fallbackResponse->isSuccessful()) {
  7.                 $this->logger->error(sprintf(
  8.                     'Failed to fetch fallback content. Status code: %d, Path: %s',
  9.                     $fallbackResponse->getStatusCode(),
  10.                     $fallbackUrl
  1.     {
  2.         if ($response->isSuccessful() && $this->isHtmlResponse($response)) {
  3.             return $response->getContent();
  4.         }
  5.         return $this->fetchContentFromFallbackUrl($request$locale$defaultLocale);
  6.     }
  7.     private function fetchContentFromFallbackUrl(
  8.         Request $request,
  9.         string  $locale,
  1.      */
  2.     public function handleTranslation(Request $requestResponse $responsestring $localestring $defaultLocale): void
  3.     {
  4.         $requestPath $request->getPathInfo() . ($request->getQueryString() ? '?' $request->getQueryString() : '');
  5.         $filePath $this->storageService->generatePath($requestPath$locale);
  6.         $originalContent $this->getOriginalContent($request$response$locale$defaultLocale);
  7.         $this->setSiteRootDocument($defaultLocale);
  8.         // Check if translation file exists
  9.         $content $this->storageService->getTranslation($filePath);
  10.         if ($content) {
  1.                 return;
  2.             }
  3.             $this->fullPageCacheService->disable();
  4.             // Delegate translation handling to TranslationService
  5.             $this->translationService->handleTranslation($request$response$locale$this->defaultLocale);
  6.             $this->fullPageCacheService->enable();
  7.         } catch (Exception|InvalidArgumentException|RunTimeException $e) {
  8.             ApplicationLogger::getInstance()->error('TranslationListener error: ' $e->getMessage());
  9.         }
  10.     }
  1.         $this->priority $dispatcher->getListenerPriority($eventName$this->listener);
  2.         $e $this->stopwatch->start($this->name'event_listener');
  3.         try {
  4.             ($this->optimizedListener ?? $this->listener)($event$eventName$dispatcher);
  5.         } finally {
  6.             if ($e->isStarted()) {
  7.                 $e->stop();
  8.             }
  9.         }
  1.         foreach ($listeners as $listener) {
  2.             if ($stoppable && $event->isPropagationStopped()) {
  3.                 break;
  4.             }
  5.             $listener($event$eventName$this);
  6.         }
  7.     }
  8.     /**
  9.      * Sorts the internal list of listeners for the given event by priority.
  1.         } else {
  2.             $listeners $this->getListeners($eventName);
  3.         }
  4.         if ($listeners) {
  5.             $this->callListeners($listeners$eventName$event);
  6.         }
  7.         return $event;
  8.     }
  1.         try {
  2.             $this->beforeDispatch($eventName$event);
  3.             try {
  4.                 $e $this->stopwatch->start($eventName'section');
  5.                 try {
  6.                     $this->dispatcher->dispatch($event$eventName);
  7.                 } finally {
  8.                     if ($e->isStarted()) {
  9.                         $e->stop();
  10.                     }
  11.                 }
  1.      */
  2.     private function filterResponse(Response $responseRequest $requestint $type): Response
  3.     {
  4.         $event = new ResponseEvent($this$request$type$response);
  5.         $this->dispatcher->dispatch($eventKernelEvents::RESPONSE);
  6.         $this->finishRequest($request$type);
  7.         return $event->getResponse();
  8.     }
in vendor/symfony/http-kernel/HttpKernel.php -> filterResponse (line 249)
  1.                 $response->setStatusCode(500);
  2.             }
  3.         }
  4.         try {
  5.             return $this->filterResponse($response$request$type);
  6.         } catch (\Exception $e) {
  7.             return $response;
  8.         }
  9.     }
in vendor/symfony/http-kernel/HttpKernel.php -> handleThrowable (line 86)
  1.                 $this->finishRequest($request$type);
  2.                 throw $e;
  3.             }
  4.             return $this->handleThrowable($e$request$type);
  5.         } finally {
  6.             $this->requestStack->pop();
  7.         }
  8.     }
  1.         $this->boot();
  2.         ++$this->requestStackSize;
  3.         $this->resetServices true;
  4.         try {
  5.             return $this->getHttpKernel()->handle($request$type$catch);
  6.         } finally {
  7.             --$this->requestStackSize;
  8.         }
  9.     }
Kernel->handle(object(Request)) in public/index.php (line 36)
  1. $kernel \Pimcore\Bootstrap::kernel();
  2. // reset current request - will be read from request stack from now on
  3. Tool::setCurrentRequest(null);
  4. $response $kernel->handle($request);
  5. $response->send();
  6. $kernel->terminate($request$response);

Symfony\Component\Routing\Exception\ ResourceNotFoundException

None of the routers in the chain matched this request GET /it/es/bombas/productos HTTP/1.1 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7 Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Accept-Encoding: gzip, deflate, br, zstd Accept-Language: it-us,it;q=0.5 Cache-Control: no-cache Host: staging.buerkle.de Pragma: no-cache Priority: u=0, i Sec-Ch-Ua: "HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129" Sec-Ch-Ua-Mobile: ?0 Sec-Ch-Ua-Platform: "Windows" Sec-Fetch-Dest: document Sec-Fetch-Mode: navigate Sec-Fetch-Site: none Sec-Fetch-User: ?1 Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) X-Forwarded-For: 10.100.0.0 X-Forwarded-Host: staging.buerkle.de X-Forwarded-Port: 443 X-Forwarded-Proto: https X-Forwarded-Scheme: https X-Php-Ob-Level: 0 X-Real-Ip: 10.100.0.0 X-Request-Id: 292a9fe45dc2c2ab59bee666160af104 X-Scheme: https

  1.         $info $request
  2.             "this request\n$request"
  3.             "url '$pathinfo'";
  4.         throw $methodNotAllowed ?: new ResourceNotFoundException("None of the routers in the chain matched $info");
  5.     }
  6.     /**
  7.      * {@inheritdoc}
  8.      *
  1.      *
  2.      * Loops through all routes and tries to match the passed request.
  3.      */
  4.     public function matchRequest(Request $request)
  5.     {
  6.         return $this->doMatch($request->getPathInfo(), $request);
  7.     }
  8.     /**
  9.      * Loops through all routers and tries to match the passed request or url.
  10.      *
  1.         // add attributes based on the request (routing)
  2.         try {
  3.             // matching a request is more powerful than matching a URL path + context, so try that first
  4.             if ($this->matcher instanceof RequestMatcherInterface) {
  5.                 $parameters $this->matcher->matchRequest($request);
  6.             } else {
  7.                 $parameters $this->matcher->match($request->getPathInfo());
  8.             }
  9.             if (null !== $this->logger) {
  1.         $this->priority $dispatcher->getListenerPriority($eventName$this->listener);
  2.         $e $this->stopwatch->start($this->name'event_listener');
  3.         try {
  4.             ($this->optimizedListener ?? $this->listener)($event$eventName$dispatcher);
  5.         } finally {
  6.             if ($e->isStarted()) {
  7.                 $e->stop();
  8.             }
  9.         }
  1.         foreach ($listeners as $listener) {
  2.             if ($stoppable && $event->isPropagationStopped()) {
  3.                 break;
  4.             }
  5.             $listener($event$eventName$this);
  6.         }
  7.     }
  8.     /**
  9.      * Sorts the internal list of listeners for the given event by priority.
  1.         } else {
  2.             $listeners $this->getListeners($eventName);
  3.         }
  4.         if ($listeners) {
  5.             $this->callListeners($listeners$eventName$event);
  6.         }
  7.         return $event;
  8.     }
  1.         try {
  2.             $this->beforeDispatch($eventName$event);
  3.             try {
  4.                 $e $this->stopwatch->start($eventName'section');
  5.                 try {
  6.                     $this->dispatcher->dispatch($event$eventName);
  7.                 } finally {
  8.                     if ($e->isStarted()) {
  9.                         $e->stop();
  10.                     }
  11.                 }
  1.      */
  2.     private function handleRaw(Request $requestint $type self::MAIN_REQUEST): Response
  3.     {
  4.         // request
  5.         $event = new RequestEvent($this$request$type);
  6.         $this->dispatcher->dispatch($eventKernelEvents::REQUEST);
  7.         if ($event->hasResponse()) {
  8.             return $this->filterResponse($event->getResponse(), $request$type);
  9.         }
  1.     {
  2.         $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  3.         $this->requestStack->push($request);
  4.         try {
  5.             return $this->handleRaw($request$type);
  6.         } catch (\Exception $e) {
  7.             if ($e instanceof RequestExceptionInterface) {
  8.                 $e = new BadRequestHttpException($e->getMessage(), $e);
  9.             }
  10.             if (false === $catch) {
  1.             $subRequest->attributes->add($request->attributes->all());
  2.             $subRequest->setLocale($defaultLocale);
  3.             $subRequest->attributes->set('virtual_translation'true);
  4.             $subRequest->attributes->set('virtual_locale'$locale);
  5.             $fallbackResponse $this->httpKernel->handle($subRequest);
  6.             if (!$fallbackResponse->isSuccessful()) {
  7.                 $this->logger->error(sprintf(
  8.                     'Failed to fetch fallback content. Status code: %d, Path: %s',
  9.                     $fallbackResponse->getStatusCode(),
  10.                     $fallbackUrl
  1.     {
  2.         if ($response->isSuccessful() && $this->isHtmlResponse($response)) {
  3.             return $response->getContent();
  4.         }
  5.         return $this->fetchContentFromFallbackUrl($request$locale$defaultLocale);
  6.     }
  7.     private function fetchContentFromFallbackUrl(
  8.         Request $request,
  9.         string  $locale,
  1.      */
  2.     public function handleTranslation(Request $requestResponse $responsestring $localestring $defaultLocale): void
  3.     {
  4.         $requestPath $request->getPathInfo() . ($request->getQueryString() ? '?' $request->getQueryString() : '');
  5.         $filePath $this->storageService->generatePath($requestPath$locale);
  6.         $originalContent $this->getOriginalContent($request$response$locale$defaultLocale);
  7.         $this->setSiteRootDocument($defaultLocale);
  8.         // Check if translation file exists
  9.         $content $this->storageService->getTranslation($filePath);
  10.         if ($content) {
  1.                 return;
  2.             }
  3.             $this->fullPageCacheService->disable();
  4.             // Delegate translation handling to TranslationService
  5.             $this->translationService->handleTranslation($request$response$locale$this->defaultLocale);
  6.             $this->fullPageCacheService->enable();
  7.         } catch (Exception|InvalidArgumentException|RunTimeException $e) {
  8.             ApplicationLogger::getInstance()->error('TranslationListener error: ' $e->getMessage());
  9.         }
  10.     }
  1.         $this->priority $dispatcher->getListenerPriority($eventName$this->listener);
  2.         $e $this->stopwatch->start($this->name'event_listener');
  3.         try {
  4.             ($this->optimizedListener ?? $this->listener)($event$eventName$dispatcher);
  5.         } finally {
  6.             if ($e->isStarted()) {
  7.                 $e->stop();
  8.             }
  9.         }
  1.         foreach ($listeners as $listener) {
  2.             if ($stoppable && $event->isPropagationStopped()) {
  3.                 break;
  4.             }
  5.             $listener($event$eventName$this);
  6.         }
  7.     }
  8.     /**
  9.      * Sorts the internal list of listeners for the given event by priority.
  1.         } else {
  2.             $listeners $this->getListeners($eventName);
  3.         }
  4.         if ($listeners) {
  5.             $this->callListeners($listeners$eventName$event);
  6.         }
  7.         return $event;
  8.     }
  1.         try {
  2.             $this->beforeDispatch($eventName$event);
  3.             try {
  4.                 $e $this->stopwatch->start($eventName'section');
  5.                 try {
  6.                     $this->dispatcher->dispatch($event$eventName);
  7.                 } finally {
  8.                     if ($e->isStarted()) {
  9.                         $e->stop();
  10.                     }
  11.                 }
  1.      */
  2.     private function filterResponse(Response $responseRequest $requestint $type): Response
  3.     {
  4.         $event = new ResponseEvent($this$request$type$response);
  5.         $this->dispatcher->dispatch($eventKernelEvents::RESPONSE);
  6.         $this->finishRequest($request$type);
  7.         return $event->getResponse();
  8.     }
in vendor/symfony/http-kernel/HttpKernel.php -> filterResponse (line 249)
  1.                 $response->setStatusCode(500);
  2.             }
  3.         }
  4.         try {
  5.             return $this->filterResponse($response$request$type);
  6.         } catch (\Exception $e) {
  7.             return $response;
  8.         }
  9.     }
in vendor/symfony/http-kernel/HttpKernel.php -> handleThrowable (line 86)
  1.                 $this->finishRequest($request$type);
  2.                 throw $e;
  3.             }
  4.             return $this->handleThrowable($e$request$type);
  5.         } finally {
  6.             $this->requestStack->pop();
  7.         }
  8.     }
  1.         $this->boot();
  2.         ++$this->requestStackSize;
  3.         $this->resetServices true;
  4.         try {
  5.             return $this->getHttpKernel()->handle($request$type$catch);
  6.         } finally {
  7.             --$this->requestStackSize;
  8.         }
  9.     }
Kernel->handle(object(Request)) in public/index.php (line 36)
  1. $kernel \Pimcore\Bootstrap::kernel();
  2. // reset current request - will be read from request stack from now on
  3. Tool::setCurrentRequest(null);
  4. $response $kernel->handle($request);
  5. $response->send();
  6. $kernel->terminate($request$response);