Symfony Exception

CategoryNotFoundException

HTTP 404 Not Found

Category "8487792433144b35b8374ccb820d3ff0" not found.

Exception

Shopware\Core\Content\Category\Exception\ CategoryNotFoundException

  1.         if (($category->getType() === CategoryDefinition::TYPE_FOLDER
  2.                 || $category->getType() === CategoryDefinition::TYPE_LINK)
  3.             && $context->getSalesChannel()->getNavigationCategoryId() !== $navigationId
  4.         ) {
  5.             throw new CategoryNotFoundException($navigationId);
  6.         }
  7.         $pageId $category->getCmsPageId();
  8.         $slotConfig $category->getTranslation('slotConfig');
  1.             $value $this->cache->get($key, function (ItemInterface $item) use ($navigationId$request$context) {
  2.                 $name self::buildName($navigationId);
  3.                 $response $this->tracer->trace($name, function () use ($navigationId$request$context) {
  4.                     return $this->getDecorated()->load($navigationId$request$context);
  5.                 });
  6.                 $item->tag($this->generateTags($navigationId$response$request$context));
  7.                 return CacheValueCompressor::compress($response);
in vendor/shopware/core/System/SystemConfig/SystemConfigService.php -> Shopware\Core\Content\Category\SalesChannel\{closure} (line 350)
  1.     public function trace(string $key, \Closure $param)
  2.     {
  3.         $this->traces[$key] = [];
  4.         $this->keys[$key] = true;
  5.         $result $param();
  6.         unset($this->keys[$key]);
  7.         return $result;
  8.     }
  1.      */
  2.     public function trace(string $key, \Closure $param)
  3.     {
  4.         return $this->collection->trace($key, function () use ($key$param) {
  5.             return $this->translator->trace($key, function () use ($key$param) {
  6.                 return $this->config->trace($key$param);
  7.             });
  8.         });
  9.     }
  10.     public function get(string $key): array
in vendor/shopware/core/Framework/Adapter/Translation/Translator.php -> Shopware\Core\Framework\Adapter\Cache\{closure} (line 120)
  1.     public function trace(string $key, \Closure $param)
  2.     {
  3.         $this->traces[$key] = [];
  4.         $this->keys[$key] = true;
  5.         $result $param();
  6.         unset($this->keys[$key]);
  7.         return $result;
  8.     }
  1.     public function trace(string $key, \Closure $param)
  2.     {
  3.         return $this->collection->trace($key, function () use ($key$param) {
  4.             return $this->translator->trace($key, function () use ($key$param) {
  5.                 return $this->config->trace($key$param);
  6.             });
  7.         });
  8.     }
  9.     public function get(string $key): array
  10.     {
in vendor/shopware/core/Framework/Adapter/Cache/CacheTagCollection.php -> Shopware\Core\Framework\Adapter\Cache\{closure} (line 46)
  1.     public function trace(string $key, \Closure $param)
  2.     {
  3.         $this->traces[$key] = [];
  4.         $this->keys[$key] = true;
  5.         $result $param();
  6.         unset($this->keys[$key]);
  7.         return $result;
  8.     }
  1.     {
  2.         return $this->collection->trace($key, function () use ($key$param) {
  3.             return $this->translator->trace($key, function () use ($key$param) {
  4.                 return $this->config->trace($key$param);
  5.             });
  6.         });
  7.     }
  8.     public function get(string $key): array
  9.     {
  10.         return array_merge(
  1.     }
  2.     public function trace(string $key, \Closure $param)
  3.     {
  4.         return $this->themeConfigAccessor->trace($key, function () use ($key$param) {
  5.             return $this->getDecorated()->trace($key$param);
  6.         });
  7.     }
  8.     public function get(string $key): array
  9.     {
in vendor/shopware/storefront/Theme/ThemeConfigValueAccessor.php -> Shopware\Storefront\Framework\Cache\{closure} (line 59)
  1.     public function trace(string $key, \Closure $param)
  2.     {
  3.         $this->traces[$key] = [];
  4.         $this->keys[$key] = true;
  5.         $result $param();
  6.         unset($this->keys[$key]);
  7.         return $result;
  8.     }
  1.     public function trace(string $key, \Closure $param)
  2.     {
  3.         return $this->themeConfigAccessor->trace($key, function () use ($key$param) {
  4.             return $this->getDecorated()->trace($key$param);
  5.         });
  6.     }
  7.     public function get(string $key): array
  8.     {
  9.         return array_unique(array_merge(
  1.             $value $this->cache->get($key, function (ItemInterface $item) use ($navigationId$request$context) {
  2.                 $name self::buildName($navigationId);
  3.                 $response $this->tracer->trace($name, function () use ($navigationId$request$context) {
  4.                     return $this->getDecorated()->load($navigationId$request$context);
  5.                 });
  6.                 $item->tag($this->generateTags($navigationId$response$request$context));
  7.                 return CacheValueCompressor::compress($response);
  8.             });
in vendor/symfony/cache-contracts/CacheTrait.php -> Shopware\Core\Content\Category\SalesChannel\{closure} (line 72)
  1.             }
  2.         }
  3.         if ($recompute) {
  4.             $save true;
  5.             $item->set($callback($item$save));
  6.             if ($save) {
  7.                 $pool->save($item);
  8.             }
  9.         }
  1.      *
  2.      * @return mixed
  3.      */
  4.     public function get(string $key, callable $callbackfloat $beta null, array &$metadata null)
  5.     {
  6.         return $this->doGet($this$key$callback$beta$metadata);
  7.     }
  8.     /**
  9.      * {@inheritdoc}
  10.      */
  1.                 });
  2.                 $item->tag($this->generateTags($navigationId$response$request$context));
  3.                 return CacheValueCompressor::compress($response);
  4.             });
  5.             return CacheValueCompressor::uncompress($value);
  6.         });
  7.     }
in vendor/shopware/core/Profiling/Profiler.php -> Shopware\Core\Content\Category\SalesChannel\{closure} (line 59)
  1.         try {
  2.             foreach (self::$profilers as $profiler) {
  3.                 $profiler->start($name$category$tags);
  4.             }
  5.             $result $closure();
  6.         } finally {
  7.             foreach (self::$profilers as $profiler) {
  8.                 $profiler->stop($name);
  9.             }
  10.         }
  1.                 return CacheValueCompressor::compress($response);
  2.             });
  3.             return CacheValueCompressor::uncompress($value);
  4.         });
  5.     }
  6.     private function generateKey(string $navigationIdRequest $requestSalesChannelContext $context): ?string
  7.     {
  8.         $parts array_merge(
  1.      *
  2.      * @Route("/store-api/category/{navigationId}", name="store-api.category.detail", methods={"GET","POST"})
  3.      */
  4.     public function load(string $navigationIdRequest $requestSalesChannelContext $context): CategoryRouteResponse
  5.     {
  6.         $response $this->inner->load($navigationId$request$context);
  7.         $route $request->attributes->get('_route');
  8.         if (!\is_string($route) || empty($route)) {
  9.             return $response;
  1.         $page NavigationPage::createFrom($page);
  2.         $navigationId $request->get('navigationId'$context->getSalesChannel()->getNavigationCategoryId());
  3.         $category $this->cmsPageRoute
  4.             ->load($navigationId$request$context)
  5.             ->getCategory();
  6.         if (!$category->getActive()) {
  7.             throw new CategoryNotFoundException($category->getId());
  8.         }
  1.      * @HttpCache()
  2.      * @Route("/navigation/{navigationId}", name="frontend.navigation.page", options={"seo"=true}, methods={"GET"})
  3.      */
  4.     public function index(SalesChannelContext $contextRequest $request): Response
  5.     {
  6.         $page $this->navigationPageLoader->load($request$context);
  7.         $this->hook(new NavigationPageLoadedHook($page$context));
  8.         return $this->renderStorefront('@Storefront/storefront/page/content/index.html.twig', ['page' => $page]);
  9.     }
  1.         $this->dispatcher->dispatch($eventKernelEvents::CONTROLLER_ARGUMENTS);
  2.         $controller $event->getController();
  3.         $arguments $event->getArguments();
  4.         // call controller
  5.         $response $controller(...$arguments);
  6.         // view
  7.         if (!$response instanceof Response) {
  8.             $event = new ViewEvent($this$request$type$response);
  9.             $this->dispatcher->dispatch($eventKernelEvents::VIEW);
  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.         $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.     }
  1.         if (!IpUtils::checkIp('127.0.0.1'$trustedProxies)) {
  2.             Request::setTrustedProxies(array_merge($trustedProxies, ['127.0.0.1']), Request::getTrustedHeaderSet());
  3.         }
  4.         try {
  5.             return $kernel->handle($request$type$catch);
  6.         } finally {
  7.             // restore global state
  8.             Request::setTrustedProxies($trustedProxies$trustedHeaderSet);
  9.         }
  10.     }
  1.         if ($this->surrogate) {
  2.             $this->surrogate->addSurrogateCapability($request);
  3.         }
  4.         // always a "master" request (as the real master request can be in cache)
  5.         $response SubRequestHandler::handle($this->kernel$requestHttpKernelInterface::MAIN_REQUEST$catch);
  6.         /*
  7.          * Support stale-if-error given on Responses or as a config option.
  8.          * RFC 7234 summarizes in Section 4.2.4 (but also mentions with the individual
  9.          * Cache-Control directives) that
  1.         // avoid that the backend sends no content
  2.         $subRequest->headers->remove('If-Modified-Since');
  3.         $subRequest->headers->remove('If-None-Match');
  4.         $response $this->forward($subRequest$catch);
  5.         if ($response->isCacheable()) {
  6.             $this->store($request$response);
  7.         }
  1.         }
  2.         if (null === $entry) {
  3.             $this->record($request'miss');
  4.             return $this->fetch($request$catch);
  5.         }
  6.         if (!$this->isFreshEnough($request$entry)) {
  7.             $this->record($request'stale');
  1.                 reload the cache by fetching a fresh response and caching it (if possible).
  2.             */
  3.             $this->record($request'reload');
  4.             $response $this->fetch($request$catch);
  5.         } else {
  6.             $response $this->lookup($request$catch);
  7.         }
  8.         $this->restoreResponseBody($request$response);
  9.         if (HttpKernelInterface::MAIN_REQUEST === $type) {
  1.             && $container->getParameter('shopware.http.cache.enabled');
  2.         if ($enabled && $container->has(CacheStore::class)) {
  3.             $kernel = new static::$httpCacheClass($kernel$container->get(CacheStore::class), null, ['debug' => $this->debug]);
  4.         }
  5.         $response $kernel->handle($transformed$type$catch);
  6.         // fire event to trigger runtime events like seo url headers
  7.         $event = new BeforeSendResponseEvent($transformed$response);
  8.         $container->get('event_dispatcher')->dispatch($event);
in vendor/shopware/core/HttpKernel.php -> doHandle (line 81)
  1.         if (!\is_bool($catch)) {
  2.             Feature::triggerDeprecationOrThrow('v6.5.0.0''The third parameter `$catch` of `HttpKernel->handle()` will be typed to `bool`');
  3.         }
  4.         try {
  5.             return $this->doHandle($request, (int) $type, (bool) $catch);
  6.         } catch (Exception $e) {
  7.             /** @var Params|array{url?: string} $connectionParams */
  8.             $connectionParams self::getConnection()->getParams();
  9.             $message str_replace([$connectionParams['url'] ?? null$connectionParams['password'] ?? null$connectionParams['user'] ?? null], '******'$e->getMessage());
HttpKernel->handle() in public/index.php (line 85)
  1.     }
  2. } else {
  3.     $kernel = new InstallerKernel($appEnv$debug);
  4. }
  5. $result $kernel->handle($request);
  6. if ($result instanceof Response) {
  7.     $result->send();
  8.     $kernel->terminate($request$result);
  9. } else {

Logs

No log messages

Stack Trace

CategoryNotFoundException
Shopware\Core\Content\Category\Exception\CategoryNotFoundException:
Category "8487792433144b35b8374ccb820d3ff0" not found.

  at vendor/shopware/core/Content/Category/SalesChannel/CategoryRoute.php:83
  at Shopware\Core\Content\Category\SalesChannel\CategoryRoute->load()
     (vendor/shopware/core/Content/Category/SalesChannel/CachedCategoryRoute.php:103)
  at Shopware\Core\Content\Category\SalesChannel\CachedCategoryRoute->Shopware\Core\Content\Category\SalesChannel\{closure}()
     (vendor/shopware/core/System/SystemConfig/SystemConfigService.php:350)
  at Shopware\Core\System\SystemConfig\SystemConfigService->trace()
     (vendor/shopware/core/Framework/Adapter/Cache/CacheTracer.php:44)
  at Shopware\Core\Framework\Adapter\Cache\CacheTracer->Shopware\Core\Framework\Adapter\Cache\{closure}()
     (vendor/shopware/core/Framework/Adapter/Translation/Translator.php:120)
  at Shopware\Core\Framework\Adapter\Translation\Translator->trace()
     (vendor/shopware/core/Framework/Adapter/Cache/CacheTracer.php:45)
  at Shopware\Core\Framework\Adapter\Cache\CacheTracer->Shopware\Core\Framework\Adapter\Cache\{closure}()
     (vendor/shopware/core/Framework/Adapter/Cache/CacheTagCollection.php:46)
  at Shopware\Core\Framework\Adapter\Cache\CacheTagCollection->trace()
     (vendor/shopware/core/Framework/Adapter/Cache/CacheTracer.php:46)
  at Shopware\Core\Framework\Adapter\Cache\CacheTracer->trace()
     (vendor/shopware/storefront/Framework/Cache/CacheTracer.php:41)
  at Shopware\Storefront\Framework\Cache\CacheTracer->Shopware\Storefront\Framework\Cache\{closure}()
     (vendor/shopware/storefront/Theme/ThemeConfigValueAccessor.php:59)
  at Shopware\Storefront\Theme\ThemeConfigValueAccessor->trace()
     (vendor/shopware/storefront/Framework/Cache/CacheTracer.php:42)
  at Shopware\Storefront\Framework\Cache\CacheTracer->trace()
     (vendor/shopware/core/Content/Category/SalesChannel/CachedCategoryRoute.php:104)
  at Shopware\Core\Content\Category\SalesChannel\CachedCategoryRoute->Shopware\Core\Content\Category\SalesChannel\{closure}()
     (vendor/symfony/cache-contracts/CacheTrait.php:72)
  at Shopware\Core\Framework\Adapter\Cache\CacheDecorator->doGet()
     (vendor/symfony/cache-contracts/CacheTrait.php:35)
  at Shopware\Core\Framework\Adapter\Cache\CacheDecorator->get()
     (vendor/shopware/core/Content/Category/SalesChannel/CachedCategoryRoute.php:109)
  at Shopware\Core\Content\Category\SalesChannel\CachedCategoryRoute->Shopware\Core\Content\Category\SalesChannel\{closure}()
     (vendor/shopware/core/Profiling/Profiler.php:59)
  at Shopware\Core\Profiling\Profiler::trace()
     (vendor/shopware/core/Content/Category/SalesChannel/CachedCategoryRoute.php:112)
  at Shopware\Core\Content\Category\SalesChannel\CachedCategoryRoute->load()
     (custom/plugins/SwagPayPal/src/Checkout/ExpressCheckout/SalesChannel/ExpressCategoryRoute.php:103)
  at Swag\PayPal\Checkout\ExpressCheckout\SalesChannel\ExpressCategoryRoute->load()
     (vendor/shopware/storefront/Page/Navigation/NavigationPageLoader.php:66)
  at Shopware\Storefront\Page\Navigation\NavigationPageLoader->load()
     (vendor/shopware/storefront/Controller/NavigationController.php:62)
  at Shopware\Storefront\Controller\NavigationController->index()
     (vendor/symfony/http-kernel/HttpKernel.php:163)
  at Symfony\Component\HttpKernel\HttpKernel->handleRaw()
     (vendor/symfony/http-kernel/HttpKernel.php:75)
  at Symfony\Component\HttpKernel\HttpKernel->handle()
     (vendor/symfony/http-kernel/Kernel.php:202)
  at Symfony\Component\HttpKernel\Kernel->handle()
     (vendor/symfony/http-kernel/HttpCache/SubRequestHandler.php:86)
  at Symfony\Component\HttpKernel\HttpCache\SubRequestHandler::handle()
     (vendor/symfony/http-kernel/HttpCache/HttpCache.php:479)
  at Symfony\Component\HttpKernel\HttpCache\HttpCache->forward()
     (vendor/symfony/http-kernel/HttpCache/HttpCache.php:452)
  at Symfony\Component\HttpKernel\HttpCache\HttpCache->fetch()
     (vendor/symfony/http-kernel/HttpCache/HttpCache.php:346)
  at Symfony\Component\HttpKernel\HttpCache\HttpCache->lookup()
     (vendor/symfony/http-kernel/HttpCache/HttpCache.php:224)
  at Symfony\Component\HttpKernel\HttpCache\HttpCache->handle()
     (vendor/shopware/core/HttpKernel.php:156)
  at Shopware\Core\HttpKernel->doHandle()
     (vendor/shopware/core/HttpKernel.php:81)
  at Shopware\Core\HttpKernel->handle()
     (public/index.php:85)