Springwebflow1.0を使用しています。続行する前に、csvファイルをアップロードして解析し、結果を表示しています。ユーザーには、検証に合格しなかったレコードを含むcsvファイルをダウンロードするオプションがあります。JSP内のリンクをクリックしてこのファイルをダウンロードすると、webflowはフォームアクションを呼び出します。フォームアクションは、応答から出力ストリームを取得することでファイルを書き出します。
HttpServletResponse response = ((ServletExternalContext) context.getExternalContext()).getResponse();
現在使用しているjspを離れたくありません。ファイルをダウンロードしたいだけです。言い換えれば、私は別の状態に移行したくないのです。動的にレンダリングされたファイルを提供したいだけです。すべてが機能しますが(ページを離れず、ファイルをダウンロードします)、コンソールで次のエラーが発生します。
_pEncydKfggPHJo8=org.springframework.webflow.engine.NoMatchingTransitionException: No transition was matched on the event(s) signaled by the [1] action(s) that executed in this action state 'downloadErrorReportAction' of flow 'myFlow'; transitions must be defined to handle action result outcomes -- possible flow configuration error? Note: the eventIds signaled were: 'array<String>[[null]]', while the supported set of transitional criteria for this action state is 'array<TransitionCriteria>[[empty]]'
at org.springframework.webflow.engine.ActionState.doEnter(ActionState.java:187)
at org.springframework.webflow.engine.State.enter(State.java:191)
at org.springframework.webflow.engine.Transition.execute(Transition.java:212)
at org.springframework.webflow.engine.TransitionableState.onEvent(TransitionableState.java:107)
at org.springframework.webflow.engine.Flow.onEvent(Flow.java:534)
Truncated. see log file for complete stacktrace
これが私のwebflow設定の関連部分です。
<view-state id="showUploadResults" view="UploadResults3.0">
<render-actions>
<action bean="UploadResultsAction" method="transitionToWebflow"/>
<action bean="UploadResultsAction" method="setupData"/>
</render-actions>
<transition on="submit" to="proceed"/>
<transition on="downloadErrorReport" to="downloadErrorReportAction"/>
</view-state>
<action-state id="downloadErrorReportAction">
<action bean="UploadResultsAction" method="downloadErrorReport" name="downloadErrorReport"/>
</action-state>