在Spring Web Flow 2中进行状态验证后,无效或丢弃历史记录无效

时间:2013-01-15 10:27:13

标签: java spring spring-webflow spring-webflow-2

我已按以下方式在流程中配置了回溯:

<view-state id="step1" model="step1Model" >
 <transition on="next" to="step2" history="invalidate">
 </transition>
</view-state>

<view-state id="step2" model="step2Model" >
 <transition on="next" to="xxxx" history="invalidate">
 </transition>
</view-state>

另外,我正在使用实现模型验证方法的编程验证,就像您在文档中阅读的那样(link)。

当模型验证没有任何错误时,回溯配置正常工作,在这种情况下,如果按下浏览器后退按钮,则会重新加载流程的预期方式。

问题是,当模型出现一些错误时,验证不允许您进入下一步,在这种情况下,如果按下浏览器后退按钮,则可以看到浏览器错误页面“文档已过期。此文档为否更长的时间“。

对此有何想法?

谢谢,Gerardo。

1 个答案:

答案 0 :(得分:1)

问题是您在每个步骤中使历史记录无效。 如果使用end-state来清理历史记录会更好。

<view-state id="step1" model="step1Model" >
 <transition on="next" to="step2">
 </transition>
</view-state>

<view-state id="step2" model="step2Model" >
 <transition on="next" to="end">
 </transition>
</view-state>

<end-state id="end" />