If you need help solving this exception, you can have a look at the TYPO3 Wiki. 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 wiki page.
return $pathAndFilenameWithoutFormat; } $tried[] = $pathAndFilenameWithoutFormat; } throw new InvalidTemplateResourceException( 'The Fluid template files "' . implode('", "', $tried) . '" could not be loaded.', 1225709595 ); }
$layoutName = ucfirst($layoutName); $layoutKey = $layoutName . '.' . $this->getFormat(); if (!array_key_exists($layoutKey, $this->resolvedFiles[self::NAME_LAYOUTS])) { $paths = $this->getLayoutRootPaths(); $this->resolvedFiles[self::NAME_LAYOUTS][$layoutKey] = $this->resolveFileInPaths($paths, $layoutName); } return $this->resolvedFiles[self::NAME_LAYOUTS][$layoutKey]; }
* @return string layout identifier */ public function getLayoutIdentifier($layoutName = 'Default') { $filePathAndFilename = $this->getLayoutPathAndFilename($layoutName); $layoutName = str_replace('.', '_', $layoutName); $prefix = 'layout_' . $layoutName . '_' . $this->getFormat(); return $this->createIdentifierForFile($filePathAndFilename, $prefix); }
} else { $layoutName = $parsedTemplate->getLayoutName($this->baseRenderingContext); try { $parsedLayout = $templateParser->getOrParseAndStoreTemplate( $templatePaths->getLayoutIdentifier($layoutName), function($parent, TemplatePaths $paths) use ($layoutName) { return $paths->getLayoutSource($layoutName); } );
'request' => $request, 'message' => $message, 'reasons' => $reasons ]); return new HtmlResponse($this->view->render(), $this->statusCode); } }
public function accessDeniedAction(ServerRequestInterface $request, string $message, array $reasons = []): ResponseInterface { $errorHandler = $this->getErrorHandlerFromSite($request, 403); if ($errorHandler instanceof PageErrorHandlerInterface) { return $errorHandler->handlePageError($request, $message, $reasons); } return $this->handlePageError( $GLOBALS['TYPO3_CONF_VARS']['FE']['pageNotFound_handling'], $GLOBALS['TYPO3_CONF_VARS']['FE']['pageNotFound_handling_accessdeniedheader'],
case 1: $response = GeneralUtility::makeInstance(ErrorController::class)->accessDeniedAction( $GLOBALS['TYPO3_REQUEST'], 'ID was not an accessible page', $this->getPageAccessFailureReasons(PageAccessFailureReasons::ACCESS_DENIED_PAGE_NOT_RESOLVED) ); break; case 2: $response = GeneralUtility::makeInstance(ErrorController::class)->accessDeniedAction(
if ($this->fePreview) { $this->disableCache(); } // Now, get the id, validate access etc: $this->fetch_the_id(); // Check if backend user has read access to this page. If not, recalculate the id. if ($this->isBackendUserLoggedIn() && $this->fePreview && !$this->getBackendUser()->doesUserHaveAccess($this->page, Permission::PAGE_SHOW)) { // Resetting $this->clear_preview();
$this->checkAlternativeIdMethods($this->controller); } } $this->controller->determineId(); // No access? Then remove user & Re-evaluate the page-id if ($this->controller->isBackendUserLoggedIn() && !$GLOBALS['BE_USER']->doesUserHaveAccess($this->controller->page, Permission::PAGE_SHOW)) { unset($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); } }; } }
$simulatingGroup = $this->simulateUserGroup($request); $GLOBALS['TSFE']->fePreview = ((int)($simulatingDate || $simulatingGroup)); } return $handler->handle($request); } /** * Simulate dates for preview functionality
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
return $response; } } return $handler->handle($request); } /** * Creates a PSR-7 compatible Response object
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
return new HtmlResponse($content, 200, ['Content-Type' => $contentType]); } } return $handler->handle($request); } /** * Find the proper configuration for the static route in the static route configuration. Mainly:
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
$uri = $requestedUri->withPath(rtrim($requestedUri->getPath(), '/')); return new RedirectResponse($uri, 307); } } return $handler->handle($request); } /** * Checks if the language is allowed in Frontend, if not, check if there is valid BE user *
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
$beUser = $GLOBALS['BE_USER']; $beUser->adminPanel = GeneralUtility::makeInstance(AdminPanelView::class); $beUser->extAdmEnabled = true; } 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); } }; } }
// At this point, we later get further route modifiers // for bw-compat we update $GLOBALS[TYPO3_REQUEST] to be used later in TSFE. $GLOBALS['TYPO3_REQUEST'] = $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); } }; } }
$connectionPool = GeneralUtility::makeInstance(ConnectionPool::class); $connection = $connectionPool->getConnectionByName(ConnectionPool::DEFAULT_CONNECTION_NAME); $connection->getConfiguration()->setSQLLogger(GeneralUtility::makeInstance(DoctrineSqlLogger::class)); } 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); } }; } }
Bootstrap::loadExtTables(); $this->setBackendUserAspect(GeneralUtility::makeInstance(Context::class), $GLOBALS['BE_USER']); } return $handler->handle($request); } /** * Creates the backend user object and returns it.
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
// Register the frontend user as aspect $this->setFrontendUserAspect(GeneralUtility::makeInstance(Context::class), $frontendUser); return $handler->handle($request); } /** * It's possible to transfer a frontend user session via a GET/POST parameter 'FE_SESSION_KEY'.
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
GeneralUtility::callUserFunction($_funcRef, $_params, $GLOBALS['TSFE']); } } 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); } }; } }
{ $eID = $request->getParsedBody()['eID'] ?? $request->getQueryParams()['eID'] ?? null; if ($eID === null) { return $handler->handle($request); } // Remove any output produced until now ob_clean();
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
$hookParameters = []; GeneralUtility::callUserFunction($hookFunction, $hookParameters, $hookParameters); } } 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); } }; } }
// refactored to have ServerRequest object available where it is needed. This global will be // deprecated then and removed. $GLOBALS['TYPO3_REQUEST'] = $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); } }; } }
); $timeTracker->start(); $timeTracker->push(''); 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); } }; } }
* @return ResponseInterface */ public function handle(ServerRequestInterface $request): ResponseInterface { return $this->tip->handle($request); } /** * Seed the middleware stack with the inner request handler
{ $requestHandler = GeneralUtility::makeInstance($this->requestHandler); $dispatcher = $this->createMiddlewareDispatcher($requestHandler); return $dispatcher->handle($request); } /** * Set up the application and shut it down afterwards
if (!$this->checkIfEssentialConfigurationExists()) { return $this->installToolRedirect(); } $this->initializeContext(); return parent::handle($request); } /** * Check if LocalConfiguration.php and PackageStates.php exist
final public function run(callable $execute = null) { try { $response = $this->handle( \TYPO3\CMS\Core\Http\ServerRequestFactory::fromGlobals() ); if ($execute !== null) { call_user_func($execute); }
// Set up the application for the frontend call_user_func(function () { $classLoader = require __DIR__.'/vendor/autoload.php'; \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::run(0, \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::REQUESTTYPE_FE); \TYPO3\CMS\Core\Core\Bootstrap::init($classLoader)->get(\TYPO3\CMS\Frontend\Http\Application::class)->run(); });
call_user_func(function () { $classLoader = require __DIR__.'/vendor/autoload.php'; \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::run(0, \TYPO3\CMS\Core\Core\SystemEnvironmentBuilder::REQUESTTYPE_FE); \TYPO3\CMS\Core\Core\Bootstrap::init($classLoader)->get(\TYPO3\CMS\Frontend\Http\Application::class)->run(); });