/** * error action */ public function errorAction() { $this->clearCacheOnError(); if ($this->arguments instanceof Arguments) { $validationResult = $this->arguments->getValidationResults(); if ($validationResult->hasErrors()) { $referringRequest = $this->request->getReferringRequest(); if ($referringRequest !== null) { $originalRequest = clone $this->request; $this->request->setOriginalRequest($originalRequest); $this->request->setOriginalRequestMappingResults($this->arguments->getValidationResults()); $this->forward($referringRequest->getControllerActionName(), $referringRequest->getControllerName(), $referringRequest->getControllerExtensionName(), $referringRequest->getArguments()); } } } // clear any previous flashmessage in order to avoid double entries $flashMessageQueue = $this->getFlashMessageQueue(); if ($flashMessageQueue instanceof FlashMessageQueue) { $flashMessageQueue->__call('getAllMessagesAndFlush', []); } $this->addFlashMessage($this->getErrorFlashMessage(), '', FlashMessage::ERROR); $this->session->clean(); }