Spring Webflow 2 - 没有bean的基本条件流

时间:2012-08-05 20:18:39

标签: spring-mvc spring-webflow

我是SWF(2.3.1)的新手,我正在四处寻找能否获得基本工作的东西。当我说'基本'时,我的意思是基本的。在这个阶段如果我可以避免它,我想避免编写任何java。我只是希望得到一个快速而肮脏的流程,最好是在流配置中。

我设法得到一个非常基本的线性流程,从视图状态(屏幕?)A到B到C(AboutYou到AboutYourCar到YourQuote)

<?xml version="1.0" encoding="UTF-8"?>
<flow xmlns="http://www.springframework.org/schema/webflow" 
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
        xsi:schemaLocation="http://www.springframework.org/schema/webflow 
                            http://www.springframework.org/schema/webflow/spring-webflow-2.0.xsd">

    <view-state id="AboutYou" view="/WEB-INF/views/jsp/motor/AboutYou.jsp">
        <transition on="Next" to="AboutYourCar" />
    </view-state>


    <view-state id="AboutYourCar" view="/WEB-INF/views/jsp/motor/AboutYourCar.jsp">
        <transition on="Back" to="AboutYou" />
        <transition on="Next" to="YourQuote" />
    </view-state>                               

    <view-state id="Modifications" view="/WEB-INF/views/js/motor/Modifications.jsp">
        <transition on="Back" to="AboutYourCar" />  
    </view-state>

    <view-state id="YourQuote" view="/WEB-INF/views/jsp/motor/YourQuote.jsp">
        <transition on="Back" to="AboutYou" />
    </view-state>                               
</flow>

在AboutYourCar视图中,我有一个输入字段,询问汽车是否已被修改:

Is your car modified?
<input type="radio" name="modified" value="No">
<input type="radio" name="modified" value="Yes">

如果请求参数'modified'为Yes,我想要进入Modifications视图状态;但我无法解决如何做到这一点。

我想我能够使用动作状态,但是(据我所知)你需要提供一个可以执行某些逻辑的动作bean。

我也认为我可以使用决策状态,但同样,我不确定如何编写它。

或许我的整个方法都错了,修改不是视图状态,但实际上应该是子视图?

非常感谢任何人提供的任何帮助,

谢谢,Nathan

1 个答案:

答案 0 :(得分:3)

类似的东西:

<decision-state id="checkSelection">
    <if test="requestParameters.modified == 'Yes'" then="Modifications" else="YourQuote"/>
</decision-state>

请参阅Spring EL,了解您可以使用流配置文件中的表达式语言(使用或不使用您自己的Java对象)和EL Variables可以使用Spring WebFlow可用的隐式变量。