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.
} $templateReference = $this->resolveTemplateFileForControllerAndActionAndFormat($controller, $action); if (!file_exists((string)$templateReference) && $templateReference !== 'php://stdin') { $format = $this->getFormat(); throw new InvalidTemplateResourceException( sprintf( 'Tried resolving a template file for controller action "%s->%s" in format ".%s", but none of the paths ' . 'contained the expected template file (%s). %s', $controller,
$actionName = $renderingContext->getControllerAction(); $parsedTemplate = $templateParser->getOrParseAndStoreTemplate( $templatePaths->getTemplateIdentifier($controllerName, $actionName), function ($parent, TemplatePaths $paths) use ($controllerName, $actionName, $renderingContext) { return $paths->getTemplateSource($controllerName, $actionName); } ); if ($parsedTemplate->isCompiled()) { $parsedTemplate->addCompiledNamespaces($this->baseRenderingContext);
*/ protected function parseTemplateSource($templateIdentifier, $templateSourceClosure) { $parsedTemplate = $this->parse( $templateSourceClosure($this, $this->renderingContext->getTemplatePaths()), $templateIdentifier ); $parsedTemplate->setIdentifier($templateIdentifier); $this->parsedTemplates[$templateIdentifier] = $parsedTemplate;
if ($parsedTemplate instanceof UncompilableTemplateInterface) { $parsedTemplate = $this->parseTemplateSource($templateIdentifier, $templateSourceClosure); } } else { $parsedTemplate = $this->parseTemplateSource($templateIdentifier, $templateSourceClosure); try { $compiler->store($templateIdentifier, $parsedTemplate); } catch (StopCompilingException $stop) { $this->renderingContext->getErrorHandler()->handleCompilerError($stop);
$parsedTemplate = $templateParser->getOrParseAndStoreTemplate( $templatePaths->getTemplateIdentifier($controllerName, $actionName), function ($parent, TemplatePaths $paths) use ($controllerName, $actionName, $renderingContext) { return $paths->getTemplateSource($controllerName, $actionName); } ); if ($parsedTemplate->isCompiled()) { $parsedTemplate->addCompiledNamespaces($this->baseRenderingContext); }
$actionName = ucfirst($actionName); $renderingContext->setControllerAction($actionName); } try { $parsedTemplate = $this->getCurrentParsedTemplate(); } catch (PassthroughSourceException $error) { return $error->getSource(); }
'request' => $request, 'message' => $message, 'reasons' => $reasons ]); return new HtmlResponse($this->view->render(), $this->statusCode); } }
public function pageNotFoundAction(ServerRequestInterface $request, string $message, array $reasons = []): ResponseInterface { $errorHandler = $this->getErrorHandlerFromSite($request, 404); if ($errorHandler instanceof PageErrorHandlerInterface) { return $errorHandler->handlePageError($request, $message, $reasons); } try { return $this->handleDefaultError($request, 404, $message); } catch (\RuntimeException $e) {
} catch (RouteNotFoundException $e) { return GeneralUtility::makeInstance(ErrorController::class)->pageNotFoundAction( $request, 'The requested page does not exist', ['code' => PageAccessFailureReasons::PAGE_NOT_FOUND] ); } if (!$pageArguments->getPageId()) {
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); } }; } }
$jsonCompatibilityConverter = GeneralUtility::makeInstance(JsonCompatibilityConverter::class); $crawlerInformation = $request->getHeaderLine($this->headerName) ?? null; if (empty($crawlerInformation)) { return $handler->handle($request); } // Authenticate crawler request: //@todo: ask service to exclude current call for special reasons: for example no relevance because the language version is not affected
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 and within the session $this->setFrontendUserAspect($frontendUser); $request = $request->withAttribute('frontend.user', $frontendUser); $response = $handler->handle($request); // Store session data for fe_users if it still exists if ($frontendUser instanceof FrontendUserAuthentication) { $frontendUser->storeSessionData();
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($GLOBALS['BE_USER']); } $response = $handler->handle($request); // If, when building the response, the user is still available, then ensure that the headers are sent properly if ($this->context->getAspect('backend.user')->isLoggedIn()) { return $this->applyHeadersToResponse($response);
if (!$middleware instanceof MiddlewareInterface) { throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342); } return $middleware->process($request, $this->next); } }; } }
) { return GeneralUtility::makeInstance(ErrorController::class)->unavailableAction($request, 'This page is temporarily unavailable.'); } // Continue the regular stack if no maintenance mode is active 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); } }; } }
$request = $request->withAttribute('routing', $routeResult); if ($routeResult->getLanguage() instanceof SiteLanguage) { Locales::setSystemLocaleFromSiteLanguage($routeResult->getLanguage()); } 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); } }; } }
$extendedRequest = $extendedRequest->withAttribute('routing', $routeResult); $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['div2007']['TYPO3_REQUEST'] = $extendedRequest; 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 { $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); } }; } }
$this->timeTracker->setEnabled($timeTrackingEnabled); $this->timeTracker->start(microtime(true)); $this->timeTracker->push(''); $response = $handler->handle($request); // Finish time tracking $this->timeTracker->pull(); $this->timeTracker->finish();
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
* @return ResponseInterface */ protected function handle(ServerRequestInterface $request): ResponseInterface { return $this->requestHandler->handle($request); } /** * Set up the application and shut it down afterwards
// Create new request object having applicationType "I am a frontend request" attribute. $request = $request->withAttribute('applicationType', SystemEnvironmentBuilder::REQUESTTYPE_FE); $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( ServerRequestFactory::fromGlobals() ); if ($execute !== null) { call_user_func($execute); }
// Set up the application for the frontend call_user_func(function () { $classLoader = require dirname(__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 dirname(__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(); });