Spring Webflow-广义决策状态的最佳实践



在流程中,我正在检查会话是否已过期或是否使用决策状态,如果是,则应重定向到错误页面,如果不是,则流程应继续。

现在,我想要两个不同的转换来调用决策状态,所以我为它们中的每一个创建两个决策状态。

<transition on="A" to="checkA"/>
<transition on="B" to="checkB"/>
<decision-state id="checkA">
<if test="error?" then="error" else="doA"/>
</decision-state>
<decision-state id="checkB">
<if test="error?" then="error" else="doB"/>
</decision-state>

那么,有没有其他方法可以让我做出一个单一的广义决策状态,它可以检查错误,如果有,然后转到错误状态,否则继续它应该继续的转换。

提前谢谢你,

有了上面的警告,我认为这实际上不适用于您所描述的检查过期会话的情况,流XML文件可以使用#{}模板表达式,如下所示:

<transition on="A" to="checkCondition">
<set name="flowScope.nextState" value="doA"/>
</transition>
<transition on="B" to="checkCondition">
<set name="flowScope.nextState" value="doB"/>
</transition>
<decision-state id="checkCondition">
<if test="error?" then="error" else="#{flowScope.nextState}"/>
</decision-state>

最新更新