Symfony Exception

RouteProviderException

HTTP 500 Internal Server Error

website.down

Exception

App\Service\Exception\ RouteProviderException

  1.         }
  2.         $request->server->set('WEBSITE_ROUTES'1);
  3.         if($website->getDown()) {
  4.             throw new RouteProviderException('website.down', [
  5.                 'redirectUrl' => $this->getRedirectUrl($wswHost$isLocal)
  6.             ]);
  7.         }
  8.         return [
RouteProvider->matchWebsiteWithDatabaseAndConnection() in /opt/wsw/wsw-web/src/Service/RouteProvider.php (line 66)
  1.     public function getRouteByName($name)
  2.     {
  3.         $request $this->container->get('request_stack')->getCurrentRequest();
  4.         if($request) {
  5.             $result $this->matchWebsiteWithDatabaseAndConnection($request);
  6.             if($result !== false) {
  7.                 $all $this->getWebsiteRoutes((bool)$result[0])->all();
  8.                 if(isset($all[$name])) {
  9.                     if($result[0]) {
  10.                         $all[$name]->setDefault('__website'$result[0]);
  1.      *
  2.      * @throws RouteNotFoundException if there is no route found for the provided name
  3.      */
  4.     protected function getRouteByName($name, array $parameters)
  5.     {
  6.         $route $this->provider->getRouteByName($name);
  7.         if (null === $route) {
  8.             throw new RouteNotFoundException('No route found for name: '.$name);
  9.         }
  10.         return $this->getBestLocaleRoute($route$parameters);
  1.                 $route $this->getBestLocaleRoute($parameters[RouteObjectInterface::ROUTE_OBJECT], $parameters);
  2.             } else {
  3.                 $route $this->getRouteByContent($name$parameters);
  4.             }
  5.         } elseif (is_string($name) && $name) {
  6.             $route $this->getRouteByName($name$parameters);
  7.         } else {
  8.             $route $this->getRouteByContent($name$parameters);
  9.         }
  10.         if (!$route instanceof SymfonyRoute) {
  1.             $name $event->getRoute();
  2.             $parameters $event->getParameters();
  3.             $referenceType $event->getReferenceType();
  4.         }
  5.         return $this->getGenerator()->generate($name$parameters$referenceType);
  6.     }
  7.     /**
  8.      * Delegate to our generator.
  9.      *
  1.             if ($router instanceof VersatileGeneratorInterface && !$router->supports($name)) {
  2.                 continue;
  3.             }
  4.             try {
  5.                 return $router->generate($name$parameters$absolute);
  6.             } catch (RouteNotFoundException $e) {
  7.                 $hint $this->getErrorMessage($name$router$parameters);
  8.                 $debug[] = $hint;
  9.                 if ($this->logger) {
  10.                     $this->logger->debug('Router '.get_class($router)." was unable to generate route. Reason: '$hint': ".$e->getMessage());
ChainRouter->generate() in /opt/wsw/wsw-web/src/Service/WebsiteRenderer.php (line 786)
  1.     {
  2.         $ts $this->em->getRepository(Setting::class)->latestUpdatedAt();
  3.         return $this->container->get('router')->generate('website.css', [
  4.             'type' => $type,
  5.             'id' => ($this->page $this->page->getId() : $default) . '.' $this->version($ts)
  6.         ]);
  7.     }
  8.     public function generateFaviconUrl()
  9.     {
WebsiteRenderer->generateCssUrl() in /opt/wsw/wsw-web/src/Service/WebsiteRenderer.php (line 4474)
  1.         return new Response($this->container->get('twig')->render('website/lock.html.twig', [
  2.             'response_status' => 'lock',
  3.             'page_id' => $this->page $this->page->getId() : null,
  4.             'slug' => $this->slug,
  5.             'css_url' => $this->generateCssUrl('lock'$isPageLockScreen 'page' 'common'),
  6.             'favicon_url' => $this->generateFaviconUrl(),
  7.             'lock_meta' => $meta ?: [],
  8.             'page_meta' => $pageMeta ?: ($meta ?: []),
  9.             'is_website_down' => $isPreview false : empty($this->website),
  10.             'is_preview_mode' => $isPreview,
WebsiteRenderer->renderLockScreen() in /opt/wsw/wsw-web/src/Service/Exception/RouteProviderException.php (line 37)
  1.                 if(isset($data['renderer'])) $response $data['renderer']->renderFeedRss();
  2.                 break;
  3.             case 'website.down':
  4.                 if($container) {
  5.                     $renderer = new WebsiteRenderer($containernull);
  6.                     $response $renderer->renderLockScreen(503);
  7.                 }
  8.                 break;
  9.             case 'lock.screen':
  10.             case 'page.lock.screen':
  11.                 if(isset($data['renderer'])) {
RouteProviderException->getResponse() in /opt/wsw/wsw-web/src/Service/ExceptionListener.php (line 30)
  1.         $exception $event->getThrowable();
  2.         if($exception instanceof ExceptionInterface) {
  3.             $event->allowCustomResponseCode();
  4.             if($response $exception->getResponse($this->container)) {
  5.                 return $event->setResponse($response);
  6.             }
  7.         } elseif($exception instanceof NotFoundHttpException) {
  1.         $this->called true;
  2.         $this->priority $dispatcher->getListenerPriority($eventName$this->listener);
  3.         $e $this->stopwatch->start($this->name'event_listener');
  4.         ($this->optimizedListener ?? $this->listener)($event$eventName$dispatcher);
  5.         if ($e->isStarted()) {
  6.             $e->stop();
  7.         }
  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.      * @throws \Exception
  2.      */
  3.     private function handleThrowable(\Throwable $eRequest $requestint $type): Response
  4.     {
  5.         $event = new ExceptionEvent($this$request$type$e);
  6.         $this->dispatcher->dispatch($eventKernelEvents::EXCEPTION);
  7.         // a listener might have replaced the exception
  8.         $e $event->getThrowable();
  9.         if (!$event->hasResponse()) {
  1.     {
  2.         if (!$request $request ?: $this->requestStack->getMasterRequest()) {
  3.             throw $exception;
  4.         }
  5.         $response $this->handleThrowable($exception$requestself::MASTER_REQUEST);
  6.         $response->sendHeaders();
  7.         $response->sendContent();
  8.         $this->terminate($request$response);
  1.                         if ($hasRun) {
  2.                             throw $e;
  3.                         }
  4.                         $hasRun true;
  5.                         $kernel->terminateWithException($e$request);
  6.                     };
  7.                 }
  8.             } elseif ($event instanceof ConsoleEvent && $app $event->getCommand()->getApplication()) {
  9.                 $output $event->getOutput();
  10.                 if ($output instanceof ConsoleOutputInterface) {
in /opt/wsw/wsw-web/vendor/symfony/error-handler/ErrorHandler.php :: Symfony\Component\HttpKernel\EventListener\{closure} (line 594)
  1.             $this->exceptionHandler null;
  2.         }
  3.         try {
  4.             if (null !== $exceptionHandler) {
  5.                 return $exceptionHandler($exception);
  6.             }
  7.             $handlerException $handlerException ?: $exception;
  8.         } catch (\Throwable $handlerException) {
  9.         }
  10.         if ($exception === $handlerException && null === $this->exceptionHandler) {
ErrorHandler->handleException()

Stack Trace

RouteProviderException

App\Service\Exception\RouteProviderException:
website.down

  at /opt/wsw/wsw-web/src/Service/RouteProvider.php:212
  at App\Service\RouteProvider->matchWebsiteWithDatabaseAndConnection()
     (/opt/wsw/wsw-web/src/Service/RouteProvider.php:66)
  at App\Service\RouteProvider->getRouteByName()
     (/opt/wsw/wsw-web/vendor/symfony-cmf/routing/src/ContentAwareGenerator.php:117)
  at Symfony\Cmf\Component\Routing\ContentAwareGenerator->getRouteByName()
     (/opt/wsw/wsw-web/vendor/symfony-cmf/routing/src/ContentAwareGenerator.php:89)
  at Symfony\Cmf\Component\Routing\ContentAwareGenerator->generate()
     (/opt/wsw/wsw-web/vendor/symfony-cmf/routing/src/DynamicRouter.php:180)
  at Symfony\Cmf\Component\Routing\DynamicRouter->generate()
     (/opt/wsw/wsw-web/vendor/symfony-cmf/routing/src/ChainRouter.php:248)
  at Symfony\Cmf\Component\Routing\ChainRouter->generate()
     (/opt/wsw/wsw-web/src/Service/WebsiteRenderer.php:786)
  at App\Service\WebsiteRenderer->generateCssUrl()
     (/opt/wsw/wsw-web/src/Service/WebsiteRenderer.php:4474)
  at App\Service\WebsiteRenderer->renderLockScreen()
     (/opt/wsw/wsw-web/src/Service/Exception/RouteProviderException.php:37)
  at App\Service\Exception\RouteProviderException->getResponse()
     (/opt/wsw/wsw-web/src/Service/ExceptionListener.php:30)
  at App\Service\ExceptionListener->onKernelException()
     (/opt/wsw/wsw-web/vendor/symfony/event-dispatcher/Debug/WrappedListener.php:117)
  at Symfony\Component\EventDispatcher\Debug\WrappedListener->__invoke()
     (/opt/wsw/wsw-web/vendor/symfony/event-dispatcher/EventDispatcher.php:230)
  at Symfony\Component\EventDispatcher\EventDispatcher->callListeners()
     (/opt/wsw/wsw-web/vendor/symfony/event-dispatcher/EventDispatcher.php:59)
  at Symfony\Component\EventDispatcher\EventDispatcher->dispatch()
     (/opt/wsw/wsw-web/vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php:151)
  at Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher->dispatch()
     (/opt/wsw/wsw-web/vendor/symfony/http-kernel/HttpKernel.php:218)
  at Symfony\Component\HttpKernel\HttpKernel->handleThrowable()
     (/opt/wsw/wsw-web/vendor/symfony/http-kernel/HttpKernel.php:111)
  at Symfony\Component\HttpKernel\HttpKernel->terminateWithException()
     (/opt/wsw/wsw-web/vendor/symfony/http-kernel/EventListener/DebugHandlersListener.php:127)
  at Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::Symfony\Component\HttpKernel\EventListener\{closure}()
     (/opt/wsw/wsw-web/vendor/symfony/error-handler/ErrorHandler.php:594)
  at Symfony\Component\ErrorHandler\ErrorHandler->handleException()