Whoops, looks like something went wrong.

(1/1) Error

Call to a member function getMediaNonPreviews() on null

in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3conf/ext/news/Classes/ViewHelpers/RenderMediaViewHelper.php line 190
        $this->imgClass = htmlspecialchars($this->arguments['imgClass']);
        $this->videoClass = htmlspecialchars($this->arguments['videoClass']);
        $this->audioClass = htmlspecialchars($this->arguments['audioClass']);

        $mediaFiles = (array)$news->getMediaNonPreviews();

        $content = $this->renderChildren();
        $content = $this->renderMedia($content, $mediaFiles);
        return $content;
at GeorgRinger\News\ViewHelpers\RenderMediaViewHelper->render()
at call_user_func()
in /srv/www/vhosts/revolution89/htdocs/web9/vendor/typo3fluid/fluid/src/Core/ViewHelper/AbstractViewHelper.php line 264
     */
    protected function callRenderMethod()
    {
        if (method_exists($this, 'render')) {
            return call_user_func([$this, 'render']);
        }
        if ((new \ReflectionMethod($this, 'renderStatic'))->getDeclaringClass()->getName() !== AbstractViewHelper::class) {
            // Method is safe to call - will not recurse through ViewHelperInvoker via the default
            // implementation of renderStatic() on this class.
at TYPO3Fluid\Fluid\Core\ViewHelper\AbstractViewHelper->callRenderMethod()
in /srv/www/vhosts/revolution89/htdocs/web9/vendor/typo3fluid/fluid/src/Core/ViewHelper/AbstractViewHelper.php line 252
    {
        $this->validateArguments();
        $this->initialize();

        return $this->callRenderMethod();
    }

    /**
     * Call the render() method and handle errors.
at TYPO3Fluid\Fluid\Core\ViewHelper\AbstractViewHelper->initializeArgumentsAndRender()
in /srv/www/vhosts/revolution89/htdocs/web9/vendor/typo3fluid/fluid/src/Core/ViewHelper/ViewHelperInvoker.php line 79
            }
            $viewHelper->setRenderingContext($renderingContext);
            $viewHelper->setArguments($evaluatedArguments);
            $viewHelper->handleAdditionalArguments($undeclaredArguments);
            return $viewHelper->initializeArgumentsAndRender();
        } catch (Exception $error) {
            return $renderingContext->getErrorHandler()->handleViewHelperError($error);
        }
    }
at TYPO3Fluid\Fluid\Core\ViewHelper\ViewHelperInvoker->invoke()
in /srv/www/vhosts/revolution89/htdocs/web9/vendor/typo3fluid/fluid/src/Core/ViewHelper/AbstractViewHelper.php line 524
     */
    public static function renderStatic(array $arguments, \Closure $renderChildrenClosure, RenderingContextInterface $renderingContext)
    {
        $viewHelperClassName = get_called_class();
        return $renderingContext->getViewHelperInvoker()->invoke($viewHelperClassName, $arguments, $renderingContext, $renderChildrenClosure);
    }

    /**
     * Save the associated ViewHelper node in a static public class variable.
at TYPO3Fluid\Fluid\Core\ViewHelper\AbstractViewHelper::renderStatic()
in /srv/www/vhosts/revolution89/htdocs/web9/var/cache/code/fluid_template/layout_Detail_Layout19_html_8cf52d999b1b4e323a2f0f46ee1b172d158de95a.php line 201
$arguments19['imgClass'] = 'img-responsive';
$arguments19['videoClass'] = 'video-wrapper';
$arguments19['audioClass'] = 'audio-wrapper';

$output0 .= GeorgRinger\News\ViewHelpers\RenderMediaViewHelper::renderStatic($arguments19, $renderChildrenClosure20, $renderingContext);

$output0 .= '
                <p class="news-single-imgcaption" style="width:589px;"></p>
            </div>
at layout_Detail_Layout19_html_8cf52d999b1b4e323a2f0f46ee1b172d158de95a->render()
in /srv/www/vhosts/revolution89/htdocs/web9/vendor/typo3fluid/fluid/src/View/AbstractTemplateView.php line 201
            } catch (PassthroughSourceException $error) {
                return $error->getSource();
            }
            $this->startRendering(self::RENDERING_LAYOUT, $parsedTemplate, $this->baseRenderingContext);
            $output = $parsedLayout->render($this->baseRenderingContext);
            $this->stopRendering();
        }

        return $output;
at TYPO3Fluid\Fluid\View\AbstractTemplateView->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/extbase/Classes/Mvc/Controller/ActionController.php line 504
            $actionResult = $this->{$this->errorMethodName}();
        }

        if ($actionResult === null && $this->view instanceof ViewInterface) {
            $this->response->appendContent($this->view->render());
        } elseif (is_string($actionResult) && $actionResult !== '') {
            $this->response->appendContent($actionResult);
        } elseif (is_object($actionResult) && method_exists($actionResult, '__toString')) {
            $this->response->appendContent((string)$actionResult);
at TYPO3\CMS\Extbase\Mvc\Controller\ActionController->callActionMethod()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/extbase/Classes/Mvc/Controller/ActionController.php line 426
        $this->view = $this->resolveView();
        if ($this->view !== null) {
            $this->initializeView($this->view);
        }
        $this->callActionMethod();
        $this->renderAssetsForRequest($request);
    }

    /**
at TYPO3\CMS\Extbase\Mvc\Controller\ActionController->processRequest()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3conf/ext/news/Classes/Controller/NewsBaseController.php line 54
     */
    public function processRequest(RequestInterface $request, ResponseInterface $response)
    {
        try {
            parent::processRequest($request, $response);
        } catch (\Exception $exception) {
            $this->handleKnownExceptionsElseThrowAgain($exception);
        }
    }
at GeorgRinger\News\Controller\NewsBaseController->processRequest()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/extbase/Classes/Mvc/Dispatcher.php line 89
                throw new InfiniteLoopException('Could not ultimately dispatch the request after ' . $dispatchLoopCount . ' iterations. Most probably, a @' . IgnoreValidation::class . ' annotation is missing on re-displaying a form with validation errors.', 1217839467);
            }
            $controller = $this->resolveController($request);
            try {
                $controller->processRequest($request, $response);
            } catch (StopActionException $ignoredException) {
            }
        }

at TYPO3\CMS\Extbase\Mvc\Dispatcher->dispatch()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/extbase/Classes/Mvc/Web/FrontendRequestHandler.php line 66
        }

        /** @var \TYPO3\CMS\Extbase\Mvc\ResponseInterface $response */
        $response = $this->objectManager->get(Response::class);
        $this->dispatcher->dispatch($request, $response);
        return $response;
    }

    /**
at TYPO3\CMS\Extbase\Mvc\Web\FrontendRequestHandler->handleRequest()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/extbase/Classes/Core/Bootstrap.php line 183
    protected function handleRequest(): string
    {
        $requestHandler = $this->requestHandlerResolver->resolveRequestHandler();

        $response = $requestHandler->handleRequest();
        // If response is NULL after handling the request we need to stop
        // This happens for instance, when a USER object was converted to a USER_INT
        // @see TYPO3\CMS\Extbase\Mvc\Web\FrontendRequestHandler::handleRequest()
        if ($response === null) {
at TYPO3\CMS\Extbase\Core\Bootstrap->handleRequest()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/extbase/Classes/Core/Bootstrap.php line 173
     */
    public function run(string $content, array $configuration): string
    {
        $this->initialize($configuration);
        return $this->handleRequest();
    }

    /**
     * @return string
at TYPO3\CMS\Extbase\Core\Bootstrap->run()
at call_user_func_array()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 5690
                if (is_object($classObj) && method_exists($classObj, $parts[1]) && is_callable($callable)) {
                    $classObj->cObj = $this;
                    $content = call_user_func_array($callable, [
                        $content,
                        $conf
                    ]);
                } else {
                    $this->getTimeTracker()->setTSlogMessage('Method "' . $parts[1] . '" did not exist in class "' . $parts[0] . '"', 3);
                }
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->callUserFunction()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/UserContentObject.php line 43
        if ($this->cObj->getUserObjectType() === false) {
            // Come here only if we are not called from $TSFE->processNonCacheableContentPartsAndSubstituteContentMarkers()!
            $this->cObj->setUserObjectType(ContentObjectRenderer::OBJECTTYPE_USER);
        }
        $tempContent = $this->cObj->callUserFunction($conf['userFunc'], $conf, '');
        if ($this->cObj->doConvertToUserIntObject) {
            $this->cObj->doConvertToUserIntObject = false;
            $content = $this->cObj->cObjGetSingle('USER_INT', $conf);
        } else {
at TYPO3\CMS\Frontend\ContentObject\UserContentObject->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 828
        }

        // Render content
        try {
            $content .= $contentObject->render($configuration);
        } catch (ContentRenderingException $exception) {
            // Content rendering Exceptions indicate a critical problem which should not be
            // caught e.g. when something went wrong with Exception handling itself
            throw $exception;
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 742
                }
                if (!$hooked) {
                    $contentObject = $this->getContentObject($name);
                    if ($contentObject) {
                        $content .= $this->render($contentObject, $conf);
                    } else {
                        // Call hook functions for extra processing
                        if ($name) {
                            if (!empty($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/class.tslib_content.php']['cObjTypeAndClassDefault'])) {
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->cObjGetSingle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/fluid/Classes/ViewHelpers/CObjectViewHelper.php line 193
        if ($timeTracker->LR) {
            $timeTracker->push('/f:cObject/', '<' . $typoscriptObjectPath);
        }
        $timeTracker->incStackPointer();
        $content = $contentObjectRenderer->cObjGetSingle($setup[$lastSegment], $setup[$lastSegment . '.'] ?? [], $typoscriptObjectPath);
        $timeTracker->decStackPointer();
        if ($timeTracker->LR) {
            $timeTracker->pull($content);
        }
at TYPO3\CMS\Fluid\ViewHelpers\CObjectViewHelper::renderContentObject()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/fluid/Classes/ViewHelpers/CObjectViewHelper.php line 170
                'No Content Object definition found at TypoScript object path "' . $typoscriptObjectPath . '"',
                1540246570
            );
        }
        $content = self::renderContentObject($contentObjectRenderer, $setup, $typoscriptObjectPath, $lastSegment);
        if (!isset($GLOBALS['TSFE']) || !($GLOBALS['TSFE'] instanceof TypoScriptFrontendController)) {
            static::resetFrontendEnvironment();
        }
        return $content;
at TYPO3\CMS\Fluid\ViewHelpers\CObjectViewHelper::renderStatic()
in /srv/www/vhosts/revolution89/htdocs/web9/var/cache/code/fluid_template/Standard_action_list_f0cc24ac7b8db941492b1cd212482fb1dcc66528.php line 70
$array11 = array (
);$arguments7['data'] = $renderingContext->getVariableProvider()->getByPath('data', $array11);
$arguments7['table'] = 'tt_content';
$renderChildrenClosure8 = ($arguments7['data'] !== null) ? function() use ($arguments7) { return $arguments7['data']; } : $renderChildrenClosure8;
$output6 .= TYPO3\CMS\Fluid\ViewHelpers\CObjectViewHelper::renderStatic($arguments7, $renderChildrenClosure8, $renderingContext);

$output6 .= '
    ';
return $output6;
at Standard_action_list_f0cc24ac7b8db941492b1cd212482fb1dcc66528->{closure}()
in /srv/www/vhosts/revolution89/htdocs/web9/vendor/typo3fluid/fluid/src/Core/ViewHelper/AbstractConditionViewHelper.php line 78
            if (isset($arguments['then'])) {
                return $arguments['then'];
            }
            if (isset($arguments['__thenClosure'])) {
                return $arguments['__thenClosure']();
            }
        } elseif (!empty($arguments['__elseClosures'])) {
            $elseIfClosures = isset($arguments['__elseifClosures']) ? $arguments['__elseifClosures'] : [];
            return static::evaluateElseClosures($arguments['__elseClosures'], $elseIfClosures, $renderingContext);
at TYPO3Fluid\Fluid\Core\ViewHelper\AbstractConditionViewHelper::renderStatic()
in /srv/www/vhosts/revolution89/htdocs/web9/var/cache/code/fluid_template/Standard_action_list_f0cc24ac7b8db941492b1cd212482fb1dcc66528.php line 95
     $renderingContext
    );
$arguments1['__thenClosure'] = $renderChildrenClosure2;

$output0 .= TYPO3Fluid\Fluid\ViewHelpers\IfViewHelper::renderStatic($arguments1, $renderChildrenClosure2, $renderingContext);

$output0 .= '

';
at Standard_action_list_f0cc24ac7b8db941492b1cd212482fb1dcc66528->section_62bce9422ff2d14f69ab80a154510232fc8a9afd()
in /srv/www/vhosts/revolution89/htdocs/web9/vendor/typo3fluid/fluid/src/View/AbstractTemplateView.php line 260
                    );
                }
            }
            $this->startRendering($renderingTypeOnNextLevel, $parsedTemplate, $renderingContext);
            $output = $parsedTemplate->$methodNameOfSection($renderingContext);
            $this->stopRendering();
        } else {
            $sections = $parsedTemplate->getVariableContainer()->get('1457379500_sections');
            if (!isset($sections[$sectionName])) {
at TYPO3Fluid\Fluid\View\AbstractTemplateView->renderSection()
in /srv/www/vhosts/revolution89/htdocs/web9/vendor/typo3fluid/fluid/src/ViewHelpers/RenderViewHelper.php line 173
            $content = (new $delegate())->render($renderingContext);
        } elseif ($partial !== null) {
            $content = $view->renderPartial($partial, $section, $variables, $optional);
        } elseif ($section !== null) {
            $content = $view->renderSection($section, $variables, $optional);
        } elseif (!$optional) {
            throw new \InvalidArgumentException('ViewHelper f:render called without either argument section, partial, renderable or delegate and optional flag is false');
        }
        // Replace empty content with default value. If default is
at TYPO3Fluid\Fluid\ViewHelpers\RenderViewHelper::renderStatic()
in /srv/www/vhosts/revolution89/htdocs/web9/var/cache/code/fluid_template/layout_Default_html_91d093a2d922b6e7db03208d383df569ef68eb10.php line 1147
     ),
     $renderingContext
    );

$output3 .= TYPO3\CMS\Fluid\ViewHelpers\RenderViewHelper::renderStatic($arguments45, $renderChildrenClosure46, $renderingContext);

$output3 .= '
                ';
// Rendering ViewHelper TYPO3\CMS\Fluid\ViewHelpers\RenderViewHelper
at layout_Default_html_91d093a2d922b6e7db03208d383df569ef68eb10->{closure}()
in /srv/www/vhosts/revolution89/htdocs/web9/vendor/typo3fluid/fluid/src/Core/ViewHelper/AbstractConditionViewHelper.php line 78
            if (isset($arguments['then'])) {
                return $arguments['then'];
            }
            if (isset($arguments['__thenClosure'])) {
                return $arguments['__thenClosure']();
            }
        } elseif (!empty($arguments['__elseClosures'])) {
            $elseIfClosures = isset($arguments['__elseifClosures']) ? $arguments['__elseifClosures'] : [];
            return static::evaluateElseClosures($arguments['__elseClosures'], $elseIfClosures, $renderingContext);
at TYPO3Fluid\Fluid\Core\ViewHelper\AbstractConditionViewHelper::renderStatic()
in /srv/www/vhosts/revolution89/htdocs/web9/var/cache/code/fluid_template/layout_Default_html_91d093a2d922b6e7db03208d383df569ef68eb10.php line 1669
        ';
return $output65;
};

$output0 .= TYPO3Fluid\Fluid\ViewHelpers\IfViewHelper::renderStatic($arguments1, $renderChildrenClosure2, $renderingContext);

$output0 .= '

';
at layout_Default_html_91d093a2d922b6e7db03208d383df569ef68eb10->render()
in /srv/www/vhosts/revolution89/htdocs/web9/vendor/typo3fluid/fluid/src/View/AbstractTemplateView.php line 201
            } catch (PassthroughSourceException $error) {
                return $error->getSource();
            }
            $this->startRendering(self::RENDERING_LAYOUT, $parsedTemplate, $this->baseRenderingContext);
            $output = $parsedLayout->render($this->baseRenderingContext);
            $this->stopRendering();
        }

        return $output;
at TYPO3Fluid\Fluid\View\AbstractTemplateView->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/FluidTemplateContentObject.php line 358
     * @return string
     */
    protected function renderFluidView()
    {
        return $this->view->render();
    }

    /**
     * Apply standard wrap to content
at TYPO3\CMS\Frontend\ContentObject\FluidTemplateContentObject->renderFluidView()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/FluidTemplateContentObject.php line 108

        $this->view->assignMultiple($variables);

        $this->renderFluidTemplateAssetsIntoPageRenderer();
        $content = $this->renderFluidView();
        $content = $this->applyStandardWrapToRenderedContent($content, $conf);

        $this->view = $parentView;
        return $content;
at TYPO3\CMS\Frontend\ContentObject\FluidTemplateContentObject->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 828
        }

        // Render content
        try {
            $content .= $contentObject->render($configuration);
        } catch (ContentRenderingException $exception) {
            // Content rendering Exceptions indicate a critical problem which should not be
            // caught e.g. when something went wrong with Exception handling itself
            throw $exception;
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 742
                }
                if (!$hooked) {
                    $contentObject = $this->getContentObject($name);
                    if ($contentObject) {
                        $content .= $this->render($contentObject, $conf);
                    } else {
                        // Call hook functions for extra processing
                        if ($name) {
                            if (!empty($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/class.tslib_content.php']['cObjTypeAndClassDefault'])) {
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->cObjGetSingle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 723
                [$name, $conf] = $cF->getVal($key, $this->getTypoScriptFrontendController()->tmpl->setup);
                $conf = array_replace_recursive(is_array($conf) ? $conf : [], $confOverride);
                // Getting the cObject
                $timeTracker->incStackPointer();
                $content .= $this->cObjGetSingle($name, $conf, $key);
                $timeTracker->decStackPointer();
            } else {
                $hooked = false;
                // Application defined cObjects
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->cObjGetSingle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/CaseContentObject.php line 47
        // If no "default" property is available, then an empty string is returned
        if ($key === 'default' && !isset($conf['default'])) {
            $theValue = '';
        } else {
            $theValue = $this->cObj->cObjGetSingle($conf[$key], $conf[$key . '.'] ?? [], $key);
        }
        if (isset($conf['stdWrap.'])) {
            $theValue = $this->cObj->stdWrap($theValue, $conf['stdWrap.']);
        }
at TYPO3\CMS\Frontend\ContentObject\CaseContentObject->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 828
        }

        // Render content
        try {
            $content .= $contentObject->render($configuration);
        } catch (ContentRenderingException $exception) {
            // Content rendering Exceptions indicate a critical problem which should not be
            // caught e.g. when something went wrong with Exception handling itself
            throw $exception;
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 742
                }
                if (!$hooked) {
                    $contentObject = $this->getContentObject($name);
                    if ($contentObject) {
                        $content .= $this->render($contentObject, $conf);
                    } else {
                        // Call hook functions for extra processing
                        if ($name) {
                            if (!empty($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/class.tslib_content.php']['cObjTypeAndClassDefault'])) {
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->cObjGetSingle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 723
                [$name, $conf] = $cF->getVal($key, $this->getTypoScriptFrontendController()->tmpl->setup);
                $conf = array_replace_recursive(is_array($conf) ? $conf : [], $confOverride);
                // Getting the cObject
                $timeTracker->incStackPointer();
                $content .= $this->cObjGetSingle($name, $conf, $key);
                $timeTracker->decStackPointer();
            } else {
                $hooked = false;
                // Application defined cObjects
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->cObjGetSingle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/RecordsContentObject.php line 119
                            $cObj->parentRecordNumber = $this->cObj->currentRecordNumber;
                            $GLOBALS['TSFE']->currentRecord = $val['table'] . ':' . $val['id'];
                            $this->cObj->lastChanged($row['tstamp']);
                            $cObj->start($row, $val['table']);
                            $tmpValue = $cObj->cObjGetSingle($renderObjName, $renderObjConf, $renderObjKey);
                            $theValue .= $tmpValue;
                        }
                    }
                }
at TYPO3\CMS\Frontend\ContentObject\RecordsContentObject->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 828
        }

        // Render content
        try {
            $content .= $contentObject->render($configuration);
        } catch (ContentRenderingException $exception) {
            // Content rendering Exceptions indicate a critical problem which should not be
            // caught e.g. when something went wrong with Exception handling itself
            throw $exception;
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 742
                }
                if (!$hooked) {
                    $contentObject = $this->getContentObject($name);
                    if ($contentObject) {
                        $content .= $this->render($contentObject, $conf);
                    } else {
                        // Call hook functions for extra processing
                        if ($name) {
                            if (!empty($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/class.tslib_content.php']['cObjTypeAndClassDefault'])) {
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->cObjGetSingle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/FluidTemplateContentObject.php line 322
            if (is_array($cObjType)) {
                continue;
            }
            if (!in_array($variableName, $reservedVariables)) {
                $variables[$variableName] = $this->cObj->cObjGetSingle($cObjType, $variablesToProcess[$variableName . '.'], 'variables.' . $variableName);
            } else {
                throw new \InvalidArgumentException(
                    'Cannot use reserved name "' . $variableName . '" as variable name in FLUIDTEMPLATE.',
                    1288095720
at TYPO3\CMS\Frontend\ContentObject\FluidTemplateContentObject->getContentObjectVariables()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/FluidTemplateContentObject.php line 102
        $this->setLayoutRootPath($conf);
        $this->setPartialRootPath($conf);
        $this->setExtbaseVariables($conf);
        $this->assignSettings($conf);
        $variables = $this->getContentObjectVariables($conf);
        $variables = $this->contentDataProcessor->process($this->cObj, $conf, $variables);

        $this->view->assignMultiple($variables);

at TYPO3\CMS\Frontend\ContentObject\FluidTemplateContentObject->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 828
        }

        // Render content
        try {
            $content .= $contentObject->render($configuration);
        } catch (ContentRenderingException $exception) {
            // Content rendering Exceptions indicate a critical problem which should not be
            // caught e.g. when something went wrong with Exception handling itself
            throw $exception;
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 742
                }
                if (!$hooked) {
                    $contentObject = $this->getContentObject($name);
                    if ($contentObject) {
                        $content .= $this->render($contentObject, $conf);
                    } else {
                        // Call hook functions for extra processing
                        if ($name) {
                            if (!empty($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/class.tslib_content.php']['cObjTypeAndClassDefault'])) {
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->cObjGetSingle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 723
                [$name, $conf] = $cF->getVal($key, $this->getTypoScriptFrontendController()->tmpl->setup);
                $conf = array_replace_recursive(is_array($conf) ? $conf : [], $confOverride);
                // Getting the cObject
                $timeTracker->incStackPointer();
                $content .= $this->cObjGetSingle($name, $conf, $key);
                $timeTracker->decStackPointer();
            } else {
                $hooked = false;
                // Application defined cObjects
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->cObjGetSingle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/CaseContentObject.php line 47
        // If no "default" property is available, then an empty string is returned
        if ($key === 'default' && !isset($conf['default'])) {
            $theValue = '';
        } else {
            $theValue = $this->cObj->cObjGetSingle($conf[$key], $conf[$key . '.'] ?? [], $key);
        }
        if (isset($conf['stdWrap.'])) {
            $theValue = $this->cObj->stdWrap($theValue, $conf['stdWrap.']);
        }
at TYPO3\CMS\Frontend\ContentObject\CaseContentObject->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 828
        }

        // Render content
        try {
            $content .= $contentObject->render($configuration);
        } catch (ContentRenderingException $exception) {
            // Content rendering Exceptions indicate a critical problem which should not be
            // caught e.g. when something went wrong with Exception handling itself
            throw $exception;
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 742
                }
                if (!$hooked) {
                    $contentObject = $this->getContentObject($name);
                    if ($contentObject) {
                        $content .= $this->render($contentObject, $conf);
                    } else {
                        // Call hook functions for extra processing
                        if ($name) {
                            if (!empty($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/class.tslib_content.php']['cObjTypeAndClassDefault'])) {
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->cObjGetSingle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 723
                [$name, $conf] = $cF->getVal($key, $this->getTypoScriptFrontendController()->tmpl->setup);
                $conf = array_replace_recursive(is_array($conf) ? $conf : [], $confOverride);
                // Getting the cObject
                $timeTracker->incStackPointer();
                $content .= $this->cObjGetSingle($name, $conf, $key);
                $timeTracker->decStackPointer();
            } else {
                $hooked = false;
                // Application defined cObjects
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->cObjGetSingle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentContentObject.php line 95
                        $cObj->parentRecordNumber = $this->cObj->currentRecordNumber;
                        $frontendController->currentRecord = $conf['table'] . ':' . $row['uid'];
                        $this->cObj->lastChanged($row['tstamp']);
                        $cObj->start($row, $conf['table']);
                        $tmpValue = $cObj->cObjGetSingle($renderObjName, $renderObjConf, $renderObjKey);
                        $cobjValue .= $tmpValue;
                    }
                }
            }
at TYPO3\CMS\Frontend\ContentObject\ContentContentObject->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 828
        }

        // Render content
        try {
            $content .= $contentObject->render($configuration);
        } catch (ContentRenderingException $exception) {
            // Content rendering Exceptions indicate a critical problem which should not be
            // caught e.g. when something went wrong with Exception handling itself
            throw $exception;
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 742
                }
                if (!$hooked) {
                    $contentObject = $this->getContentObject($name);
                    if ($contentObject) {
                        $content .= $this->render($contentObject, $conf);
                    } else {
                        // Call hook functions for extra processing
                        if ($name) {
                            if (!empty($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/class.tslib_content.php']['cObjTypeAndClassDefault'])) {
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->cObjGetSingle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/FluidTemplateContentObject.php line 322
            if (is_array($cObjType)) {
                continue;
            }
            if (!in_array($variableName, $reservedVariables)) {
                $variables[$variableName] = $this->cObj->cObjGetSingle($cObjType, $variablesToProcess[$variableName . '.'], 'variables.' . $variableName);
            } else {
                throw new \InvalidArgumentException(
                    'Cannot use reserved name "' . $variableName . '" as variable name in FLUIDTEMPLATE.',
                    1288095720
at TYPO3\CMS\Frontend\ContentObject\FluidTemplateContentObject->getContentObjectVariables()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/FluidTemplateContentObject.php line 102
        $this->setLayoutRootPath($conf);
        $this->setPartialRootPath($conf);
        $this->setExtbaseVariables($conf);
        $this->assignSettings($conf);
        $variables = $this->getContentObjectVariables($conf);
        $variables = $this->contentDataProcessor->process($this->cObj, $conf, $variables);

        $this->view->assignMultiple($variables);

at TYPO3\CMS\Frontend\ContentObject\FluidTemplateContentObject->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 828
        }

        // Render content
        try {
            $content .= $contentObject->render($configuration);
        } catch (ContentRenderingException $exception) {
            // Content rendering Exceptions indicate a critical problem which should not be
            // caught e.g. when something went wrong with Exception handling itself
            throw $exception;
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->render()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 742
                }
                if (!$hooked) {
                    $contentObject = $this->getContentObject($name);
                    if ($contentObject) {
                        $content .= $this->render($contentObject, $conf);
                    } else {
                        // Call hook functions for extra processing
                        if ($name) {
                            if (!empty($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/class.tslib_content.php']['cObjTypeAndClassDefault'])) {
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->cObjGetSingle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php line 687
        foreach ($sKeyArray as $theKey) {
            $theValue = $setup[$theKey];
            if ((int)$theKey && strpos($theKey, '.') === false) {
                $conf = $setup[$theKey . '.'] ?? [];
                $content .= $this->cObjGetSingle($theValue, $conf, $addKey . $theKey);
            }
        }
        return $content;
    }
at TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer->cObjGet()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Http/RequestHandler.php line 231
     * @return string
     */
    protected function generatePageBodyContent(TypoScriptFrontendController $controller): string
    {
        $pageContent = $controller->cObj->cObjGet($controller->pSetup) ?: '';
        if ($controller->pSetup['wrap'] ?? false) {
            $pageContent = $controller->cObj->wrap($pageContent, $controller->pSetup['wrap']);
        }
        if ($controller->pSetup['stdWrap.'] ?? false) {
at TYPO3\CMS\Frontend\Http\RequestHandler->generatePageBodyContent()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Http/RequestHandler.php line 197
    protected function generatePageContent(TypoScriptFrontendController $controller, ServerRequestInterface $request): string
    {
        // Generate the main content between the <body> tags
        // This has to be done first, as some additional TSFE-related code could have been written
        $pageContent = $this->generatePageBodyContent($controller);
        // If 'disableAllHeaderCode' is set, all the pageRenderer settings are not evaluated
        if ($controller->config['config']['disableAllHeaderCode'] ?? false) {
            return $pageContent;
        }
at TYPO3\CMS\Frontend\Http\RequestHandler->generatePageContent()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Http/RequestHandler.php line 133
            // Content generation
            $this->timeTracker->incStackPointer();
            $this->timeTracker->push($controller->sPre, 'PAGE');

            $controller->content = $this->generatePageContent($controller, $request);

            $this->timeTracker->pull($this->timeTracker->LR ? $controller->content : '');
            $this->timeTracker->decStackPointer();

at TYPO3\CMS\Frontend\Http\RequestHandler->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3conf/ext/z7_blog/Classes/Middleware/StructuredData.php line 148
            // Add to the end of the page
            GeneralUtility::makeInstance(PageRenderer::class)->addFooterData('<script type="application/ld+json">' . json_encode($this->parseStructuredData($structuredData)) . '</script>');
        }

        return $handler->handle($request);
    }
}
at Zeroseven\Z7Blog\Middleware\StructuredData->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/OutputCompression.php line 48
        // Throw away all output that may have happened during bootstrapping by weird extensions
        ob_clean();
        // Initialize output compression if configured
        $this->initializeOutputCompression();
        return $handler->handle($request);
    }

    /**
     * Initialize output compression if configured
at TYPO3\CMS\Frontend\Middleware\OutputCompression->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3conf/ext/tt_news/Classes/Middleware/AjaxResolver.php line 48
    {
        $eID = $request->getParsedBody()['ttnewsID'] ?? $request->getQueryParams()['ttnewsID'] ?? null;

        if ($eID === null) {
            return $handler->handle($request);
        }

        $parsedBody = $request->getQueryParams();

at RG\TtNews\Middleware\AjaxResolver->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/ContentLengthResponseHeader.php line 47
     * @return ResponseInterface
     */
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $response = $handler->handle($request);
        if (
            !($response instanceof NullResponse)
            && $GLOBALS['TSFE'] instanceof TypoScriptFrontendController
            && $GLOBALS['TSFE']->isOutputting(true)) {
at TYPO3\CMS\Frontend\Middleware\ContentLengthResponseHeader->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/ShortcutAndMountPointRedirect.php line 69
                return new RedirectResponse($externalUrl, 303);
            }
        }

        return $handler->handle($request);
    }

    protected function getRedirectUri(ServerRequestInterface $request): ?string
    {
at TYPO3\CMS\Frontend\Middleware\ShortcutAndMountPointRedirect->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3conf/ext/z7_blog/Classes/Middleware/RedirectHandler.php line 44
                ]);
            }
        }

        return $handler->handle($request);
    }

    protected function buildRedirectResponse(array $typoLinkConfiguration, int $statusCode = null): ResponseInterface
    {
at Zeroseven\Z7Blog\Middleware\RedirectHandler->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/PrepareTypoScriptFrontendRendering.php line 86
                $this->convertCharsetRecursivelyToUtf8($parsedBody, $this->controller->metaCharset);
                $request = $request->withParsedBody($parsedBody);
            }
        }
        return $handler->handle($request);
    }

    /**
     * Small helper function to convert charsets for arrays to UTF-8
at TYPO3\CMS\Frontend\Middleware\PrepareTypoScriptFrontendRendering->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/TypoScriptFrontendInitialization.php line 108
        }

        // Make TSFE globally available
        $GLOBALS['TSFE'] = $controller;
        return $handler->handle($request);
    }

    /**
     * Register the backend user as aspect
at TYPO3\CMS\Frontend\Middleware\TypoScriptFrontendInitialization->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/PageArgumentValidator.php line 131
            }
        }

        $request = $request->withAttribute('noCache', $this->disableCache);
        return $handler->handle($request);
    }

    /**
     * Filters out the arguments that are necessary for calculating cHash
at TYPO3\CMS\Frontend\Middleware\PageArgumentValidator->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/PreviewSimulator.php line 66
            $previewAspect = GeneralUtility::makeInstance(PreviewAspect::class, $isPreview);
            $this->context->setAspect('frontend.preview', $previewAspect);
        }

        return $handler->handle($request);
    }

    /**
     * Simulate dates for preview functionality
at TYPO3\CMS\Frontend\Middleware\PreviewSimulator->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/PageResolver.php line 106
        // merge the PageArguments with the request query parameters
        $queryParams = array_replace_recursive($request->getQueryParams(), $pageArguments->getArguments());
        $request = $request->withQueryParams($queryParams);

        return $handler->handle($request);
    }
}
at TYPO3\CMS\Frontend\Middleware\PageResolver->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/StaticRouteResolver.php line 80

                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:
at TYPO3\CMS\Frontend\Middleware\StaticRouteResolver->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/SiteBaseRedirectResolver.php line 94
                $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
at TYPO3\CMS\Frontend\Middleware\SiteBaseRedirectResolver->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/FrontendUserAuthenticator.php line 77
        // 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();
at TYPO3\CMS\Frontend\Middleware\FrontendUserAuthenticator->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/BackendUserAuthenticator.php line 66
            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);
at TYPO3\CMS\Frontend\Middleware\BackendUserAuthenticator->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/MaintenanceMode.php line 55
        ) {
            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);
    }
}
at TYPO3\CMS\Frontend\Middleware\MaintenanceMode->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/SiteResolver.php line 65
        $request = $request->withAttribute('routing', $routeResult);
        if ($routeResult->getLanguage() instanceof SiteLanguage) {
            Locales::setSystemLocaleFromSiteLanguage($routeResult->getLanguage());
        }
        return $handler->handle($request);
    }
}
at TYPO3\CMS\Frontend\Middleware\SiteResolver->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/EidHandler.php line 64
    {
        $eID = $request->getParsedBody()['eID'] ?? $request->getQueryParams()['eID'] ?? null;

        if ($eID === null) {
            return $handler->handle($request);
        }

        // Remove any output produced until now
        ob_clean();
at TYPO3\CMS\Frontend\Middleware\EidHandler->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Middleware/NormalizedParamsAttribute.php line 45
     */
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        $request = $request->withAttribute('normalizedParams', NormalizedParams::createFromRequest($request));
        return $handler->handle($request);
    }
}
at TYPO3\CMS\Core\Middleware\NormalizedParamsAttribute->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Middleware/TimeTrackerInitialization.php line 58
        $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();
at TYPO3\CMS\Frontend\Middleware\TimeTrackerInitialization->process()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 172

                if (!$middleware instanceof MiddlewareInterface) {
                    throw new \InvalidArgumentException(get_class($middleware) . ' does not implement ' . MiddlewareInterface::class, 1516821342);
                }
                return $middleware->process($request, $this->next);
            }
        };
    }
}
at class@anonymous/srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php:138$233->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php line 78
     * @return ResponseInterface
     */
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        return $this->tip->handle($request);
    }

    /**
     * Seed the middleware stack with the inner request handler
at TYPO3\CMS\Core\Http\MiddlewareDispatcher->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/AbstractApplication.php line 85
     * @return ResponseInterface
     */
    protected function handle(ServerRequestInterface $request): ResponseInterface
    {
        return $this->requestHandler->handle($request);
    }

    /**
     * Set up the application and shut it down afterwards
at TYPO3\CMS\Core\Http\AbstractApplication->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/frontend/Classes/Http/Application.php line 69
        // 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
at TYPO3\CMS\Frontend\Http\Application->handle()
in /srv/www/vhosts/revolution89/htdocs/web9/public/typo3/sysext/core/Classes/Http/AbstractApplication.php line 97
    final public function run(callable $execute = null)
    {
        try {
            $response = $this->handle(
                ServerRequestFactory::fromGlobals()
            );
            if ($execute !== null) {
                call_user_func($execute);
            }
at TYPO3\CMS\Core\Http\AbstractApplication->run()
in /srv/www/vhosts/revolution89/htdocs/web9/public/index.php line 25
// 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();
});
at {closure}()
in /srv/www/vhosts/revolution89/htdocs/web9/public/index.php line 26
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();
});