resultForwardFactory = $resultForwardFactory; parent::__construct($context); } /** * Render CMS 404 Not found page * * @return \Magento\Framework\Controller\ResultInterface */ public function execute() { $pageId = $this->_objectManager->get( \Magento\Framework\App\Config\ScopeConfigInterface::class, \Magento\Store\Model\ScopeInterface::SCOPE_STORE )->getValue( \Magento\Cms\Helper\Page::XML_PATH_NO_ROUTE_PAGE, \Magento\Store\Model\ScopeInterface::SCOPE_STORE ); /** @var \Magento\Cms\Helper\Page $pageHelper */ $pageHelper = $this->_objectManager->get(\Magento\Cms\Helper\Page::class); $resultPage = $pageHelper->prepareResultPage($this, $pageId); if ($resultPage) { $resultPage->setStatusHeader(404, '1.1', 'Not Found'); $resultPage->setHeader('Status', '404 File not found'); return $resultPage; } else { /** @var \Magento\Framework\Controller\Result\Forward $resultForward */ $resultForward = $this->resultForwardFactory->create(); $resultForward->setController('index'); $resultForward->forward('defaultNoRoute'); return $resultForward; } } }