1

有谁知道是否可以在 Spring Web Flow 定义中定义动态转换?

示例 1 - 使用属性文件:

<action-state id="createSubscription" >
    <evaluate expression="myvar" />
    <transition on="$[test.result.valid]" to="subscribeUser-successResponse" />
    <transition                               to="subscribeUser-exceptionResponse" />
</action-state>

示例 2 - 使用变量本身的值:

<action-state id="createSubscription" >
    <evaluate expression="myvar" />
    <transition to="$[myvar]" />
</action-state>

这不是强制性的,但可以帮助设计更通用的流程。

在此先感谢大家。

4

1 回答 1

3

你绝对可以为过渡“到”做。假设流 xml 有一些动作和视图状态:

    <action-state id="createSubscription">
        <evaluate expression="myAction.prepareNextState(flowScope.formBean)"/>
        <transition to="${flowScope.formBean.displayNextState}">
    </action-state>

    <view-state id="someView" view="someView" model="formBean">
        ...
    </view-state>

具有 prepareNextState 方法的 myAction 类如下:

    public class MyAction implements Serializable{
        ....
        public void prepareNextState(FormBean formBean){
            //displayNextState is a String field in FormBean                
            formBean.setDisplayNextState("someView");
        }
        ....
    }

通过这种方式,我们可以为转换“to”定义通用转换。

于 2014-04-28T16:26:26.483 回答