错字3流:捕获异常并转发回原始动作

时间:2015-06-10 06:27:13

标签: flow-framework

在我的typo3流程应用程序中,我希望在将异常作为flash消息抛出后停止执行。因此我写了这个:

public function updateAction(Mitglied $mitglied) {

   if ($xy == 'z') {
       try {
           throw new \TYPO3\Flow\Validation\Exception\InvalidValidationOptionsException('Fehler: In dieser Kombination nicht zulässig', 1);
       } catch (\TYPO3\Flow\Validation\Exception\InvalidValidationOptionsException $e) {
           $this->flashMessageContainer->addMessage(new \TYPO3\Flow\Error\Error($e->getMessage()));
       }
   }

   $this->mitgliedRepository->update($mitglied);
   $this->addFlashMessage('Mitglied erfolgreich geändert.');
   $this->redirect('index');
}

正如我想的那样,消息显示为flash消息。但是函数的执行并没有停止。有谁知道,为什么以及如何预防?对于该情况,需要重定向到原始动作,if条件为真。

1 个答案:

答案 0 :(得分:0)

我现在使用以下代码获得它:

$this->errorAction()->forwardToReferringRequest();

最后这更容易:

<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 200 200" xml:space="preserve" width="200px">
  <defs>
    <!--defines the shape to use for clipping-->
    <circle id="circle" cx="100" cy="100" r="100" />
  </defs>
  <clipPath id="clip">
    <!--creates the clipping mask from the shape-->
    <use xlink:href="#circle" overflow="visible"></use>
  </clipPath>
  <!--group containing the image with clipping applied-->
  <g clip-path="url(#clip)">
    <image overflow="visible" width="768" height="432" xlink:href="http://cp91279.biography.com/Leonardo-da-Vinci_A-Divine-Mind_HD_768x432-16x9.jpg"></image>
  </g>
</svg>