0

アプリケーション用に Spring Webflow 例外ハンドラーを作成し、それを抽象的な親フローで定義しました。このハンドラーに FacesMessages を追加して、いくつかのエラーを一般的な方法で表示します。アクション状態で発生する例外を処理できないという問題が発生しました。最後の有効なビューステートまたはそのようなものに戻ろうとします (または、開始状態に移動する可能性があります)。とにかく、アプリケーションがクラッシュしたり、空白のページが表示されたりしたくありません。

@Override
public void handle(FlowExecutionException exception, RequestControlContext context) {
    Object testState = context.getCurrentState();
    if(testState instanceof ActionState){
         //what to do here?
    }
}

MyFaces の JSF 2 で Spring Webflow バージョン 2.3.0.RELEASE を使用しています。

よろしく、 パトリック

4

1 に答える 1

4

別の状態への遷移を実行できます (遷移が存在する必要があります)。したがって、if ステートメント内で次のことができます。

TransitionDefinition errorDefinition = context.getMatchingTransition("errorState");
Transition errorTransition = (Transition)errorDefinition;
context.execute(errorTransition);

トランジションは、一般的なエラー ページへのグローバルなトランジションである可能性があります。

よろしく。

于 2013-03-08T12:49:09.143 に答える