我是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
答案 0 :(得分:3)
类似的东西:
<decision-state id="checkSelection">
<if test="requestParameters.modified == 'Yes'" then="Modifications" else="YourQuote"/>
</decision-state>
请参阅Spring EL,了解您可以使用流配置文件中的表达式语言(使用或不使用您自己的Java对象)和EL Variables可以使用Spring WebFlow可用的隐式变量。