If you need help solving this exception, you can have a look at the TYPO3 Documentation. There you can find solutions provided by the TYPO3 community. Once you have found a solution to the problem, help others by contributing to the documentation page.
Find a solution for this exception in the TYPO3 Documentation.
) ->executeQuery() ->fetchAssociative(); if (empty($row)) { throw new PageNotFoundException('Could not fetch page data for uid ' . $uid . '.', 1343589451); } $this->pageRepository->versionOL('pages', $row, false, true); if (is_array($row)) { $row = $this->pageRepository->getLanguageOverlay('pages', $row, $this->context->getAspect('language'));
* @throws CircularRootLineException */ protected function generateRootlineCache(): void { $page = $this->getRecordArray($this->pageUid); // If the current page is a mounted (according to the MP parameter) handle the mount-point if ($this->isMountedPage()) { $mountPoint = $this->getRecordArray($this->parsedMountPointParameters[$this->pageUid]); $page = $this->processMountedPage($page, $mountPoint);
} if (!$this->runtimeCache->has('rootline-localcache-' . $this->cacheIdentifier)) { $entry = $this->cache->get($this->cacheIdentifier); if (!$entry) { $this->generateRootlineCache(); } else { $this->runtimeCache->set('rootline-localcache-' . $this->cacheIdentifier, $entry, [self::RUNTIME_CACHE_TAG]); $depth = count($entry); // Populate the root-lines for parent pages as well
'endtime' => 0, 'sorting' => 0, ]; if ($pageId > 0) { $rootLine = GeneralUtility::makeInstance(RootlineUtility::class, $pageId)->get(); $sysTemplateRows = $this->sysTemplateRepository->getSysTemplateRowsByRootline($rootLine, $request); ksort($rootLine); } if (empty($sysTemplateRows)) {
* Returns the TypoScript configuration found in config.tx_extbase */ protected function getExtbaseConfiguration(): array { $setup = $this->getTypoScriptSetup(); $extbaseConfiguration = []; if (isset($setup['config.']['tx_extbase.'])) { $extbaseConfiguration = $this->typoScriptService->convertTypoScriptArrayToPlainArray($setup['config.']['tx_extbase.']); }
// @todo: Avoid $GLOBALS['TYPO3_REQUEST'] in v13. /** @var ServerRequestInterface|null $request */ $request = $this->request ?? $GLOBALS['TYPO3_REQUEST'] ?? null; $frameworkConfiguration = $this->getExtbaseConfiguration(); if (!isset($frameworkConfiguration['persistence']['storagePid'])) { $frameworkConfiguration['persistence']['storagePid'] = $this->getCurrentPageId($request); } // only merge $this->configuration and override controller configuration when retrieving configuration of the current plugin
case self::CONFIGURATION_TYPE_SETTINGS: $configuration = $this->concreteConfigurationManager->getConfiguration($extensionName, $pluginName); return $configuration['settings'] ?? []; case self::CONFIGURATION_TYPE_FRAMEWORK: return $this->concreteConfigurationManager->getConfiguration($extensionName, $pluginName); case self::CONFIGURATION_TYPE_FULL_TYPOSCRIPT: return $this->concreteConfigurationManager->getTypoScriptSetup(); default: throw new InvalidConfigurationTypeException('Invalid configuration type "' . $configurationType . '"', 1206031879);
* @deprecated since TYPO3 v12, will be removed in TYPO3 v13. Remove together with other extbase feature toggle related code. */ public function isFeatureEnabled(string $featureName): bool { $configuration = $this->getConfiguration(self::CONFIGURATION_TYPE_FRAMEWORK); return (bool)(isset($configuration['features'][$featureName]) && $configuration['features'][$featureName]); } }
if ($module instanceof ExtbaseModule) { $configuration = [ 'controllerConfiguration' => $module->getControllerActions(), ]; $useArgumentsWithoutNamespace = !$this->configurationManager->isFeatureEnabled('enableNamespacedArgumentsForBackend'); if (!$useArgumentsWithoutNamespace) { // @deprecated since TYPO3 v12, will be removed in TYPO3 v13. Remove together with other extbase feature toggle related code. // Remove "$useArgumentsWithoutNamespace" from if() below. trigger_error(
'pluginName' => $module?->getIdentifier(), ]; $request = $this->initialize($configuration, $request); $extbaseRequest = $this->extbaseRequestBuilder->build($request); $response = $this->dispatcher->dispatch($extbaseRequest); $this->resetSingletons(); $this->cacheService->clearCachesOfRegisteredPageIds(); return $response;
$targetIdentifier = $route->getOption('target'); $target = $this->getCallableFromTarget($targetIdentifier); $arguments = [$request]; return $target(...$arguments); } /** * Evaluates HTTP `Referer` header (which is denied by client to be a custom
// there are Core classes that need the Request object but do not get it handed in $this->resetGlobalsToCurrentRequest($request); try { // Check if the router has the available route and dispatch. return $this->dispatcher->dispatch($request); } catch (MissingRequestTokenException $e) { // When token was missing, then redirect to login, but keep the current route as redirect after login $loginUrl = $this->uriBuilder->buildUriWithRedirect( 'login',
); $pageRenderer->loadRequireJsModule('TYPO3/CMS/In2publishCore/LoadingOverlay'); $pageRenderer->addInlineLanguageLabelFile('EXT:in2publish_core/Resources/Private/Language/locallang_js.xlf'); $response = $handler->handle($request); if ($response->getStatusCode() >= 200 && $response->getStatusCode() < 300) { $body = $response->getBody(); if ($body->isSeekable()) {
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { $this->simpleStopwatch->start(); $response = $handler->handle($request); // Early return for ajax request e.g. pagetree or dashboard widgets. $contentType = $response->getHeaderLine('Content-Type'); $route = $request->getQueryParams()['route'] ?? '';
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
class RootPageWorkflowStateButtonMiddleware implements MiddlewareInterface { public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { $response = $handler->handle($request); if (TYPO3_V11) { return $response; }
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
{ public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { try { $response = $handler->handle($request); } catch (PropagateResponseException $e) { $response = $e->getResponse(); }
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
$rootLine = BackendUtility::BEgetRootLine($pageId); } $site = $this->siteMatcher->matchByPageId($pageId, $rootLine); $request = $request->withAttribute('site', $site); return $handler->handle($request); } }
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { try { return $handler->handle($request); } catch (VerificationRequiredException $exception) { return $this->handleVerificationRequired($exception); } catch (RequestGrantedException $exception) { return $this->handleRequestGrantedException($exception);
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
* Adds HTTP headers defined in $GLOBALS['TYPO3_CONF_VARS']['BE']['HTTP']['Response']['Headers'] */ public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { $response = $handler->handle($request); // Remove HSTS header, if [BE][lockSSL] is not configured to use SSL if ((bool)$GLOBALS['TYPO3_CONF_VARS']['BE']['lockSSL'] === false) { unset($GLOBALS['TYPO3_CONF_VARS']['BE']['HTTP']['Response']['Headers']['strictTransportSecurity']);
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { $request = $request->withAttribute('nonce', $this->requestId->nonce); $response = $handler->handle($request); if (!$this->features->isFeatureEnabled('security.backend.enforceContentSecurityPolicy')) { return $response; }
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
ob_clean(); // Initialize output compression if configured $this->initializeOutputCompression(); return $handler->handle($request); } /** * Initialize output compression if configured
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
$request = $request ->withAttribute('module', $module) ->withAttribute('moduleData', $moduleData); $response = $handler->handle($request); if ($ensureToPersistUserSettings) { $backendUser->writeUC(); }
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
} $GLOBALS['LANG'] = $this->languageServiceFactory->createFromUserPreferences($GLOBALS['BE_USER']); // Re-setting the user and take the workspace from the user object now $this->setBackendUserAspect($GLOBALS['BE_USER']); $response = $handler->handle($request); $this->sessionGarbageCollection(); return $this->enrichResponseWithHeadersAndCookieInformation($request, $response, $GLOBALS['BE_USER']); }
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
$this->securityAspect->setReceivedRequestToken(false); $this->logger->debug('Could not resolve request token', ['exception' => $exception]); } $response = $handler->handle($request); return $this->enrichResponseWithCookie($request, $response); } protected function resolveNoncePool(ServerRequestInterface $request): NoncePool
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
case 'indexFile': return $this->indexFile($request); } } return $handler->handle($request); } private function indexFile(ServerRequestInterface $request): ResponseInterface {
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
$uri = $this->uriBuilder->buildUriFromRoute('login'); return new RedirectResponse($uri); } return $handler->handle($request); } }
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
// @todo create report, then call persist, then dispatch new event $this->persistCspReport($scope, $request); return new NullResponse(); } return $handler->handle($request); } }
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
->withPort($sslPortSuffix); return new RedirectResponse($backendUrl); } return $handler->handle($request); } }
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
$request->getAttribute('normalizedParams')->getRemoteAddress(), trim((string)$GLOBALS['TYPO3_CONF_VARS']['BE']['IPmaskList']) ); return $handler->handle($request); } /** * Check adminOnly configuration variable and redirects to an URL in file typo3conf/LOCK_BACKEND
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
*/ public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { $request = $request->withAttribute('normalizedParams', NormalizedParams::createFromRequest($request)); return $handler->handle($request); } }
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
1396795884 ); } return $handler->handle($request); } /** * Checks if the provided host header value matches the trusted hosts pattern.
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
* Invoke the middleware stack */ public function handle(ServerRequestInterface $request): ResponseInterface { return $this->tip->handle($request); } /** * Seed the middleware stack with the inner request handler
public function handle(ServerRequestInterface $request): ResponseInterface { try { $response = $this->requestHandler->handle($request); } catch (ImmediateResponseException $exception) { $response = $exception->getResponse(); } return $response;
$request = $request->withAttribute('applicationType', SystemEnvironmentBuilder::REQUESTTYPE_BE); // Set up the initial context $this->initializeContext(); return parent::handle($request); } /** * Create a PSR-7 Response that redirects to the install tool
* Set up the application and shut it down afterwards */ final public function run() { $response = $this->handle(ServerRequestFactory::fromGlobals()); $this->sendResponse($response); } }
// Set up the application for the backend call_user_func(static function () { $classLoader = require dirname(dirname(__DIR__)).'/vendor/autoload.php'; \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::run(1, \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::REQUESTTYPE_BE); \TYPO3\CMS\Core\Core\Bootstrap::init($classLoader)->get(\TYPO3\CMS\Backend\Http\Application::class)->run(); });
call_user_func(static function () { $classLoader = require dirname(dirname(__DIR__)).'/vendor/autoload.php'; \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::run(1, \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::REQUESTTYPE_BE); \TYPO3\CMS\Core\Core\Bootstrap::init($classLoader)->get(\TYPO3\CMS\Backend\Http\Application::class)->run(); });