1

我目前有一个使用 Webflow + Ajax 的 Spring Webflow 应用程序。

我有一个名为“A”的视图状态,它有几个转换。

<view-state id="A" model="myClass">
    <transition on="X1" .../>
    <transition on="X2" .../>
    <transition on="X3" .../>
</view-state>

问题是每个转换应该只验证“myClass”的一部分而不是全部。默认情况下,Spring Webflow 有一个验证方法。

基本上我需要的是在每次转换时调用不同的验证方法,而不是只有一个。

这可能吗?关于如何做到这一点的任何想法?

提前致谢!!!

4

2 回答 2

3

为什么不对视图状态使用一个 ValidationClass?您可以通过调用获取触发验证的事件

public String getUserEvent();

在 ValidationContext 上。然后,根据结果做任何你想要验证的事情。

于 2011-11-16T15:19:33.663 回答
1

可以使用被调用的属性validatorMethod来指定在验证器上调用的特定方法,如此处所述。这是来自 Javadoc 的修改示例,展示了如何执行此操作:

<view-state id="displayCriteria">
    <on-render>
        <evaluate expression="formAction.setupForm"/>
    </on-render>
    <transition on="search" to="executeSearch">
        <evaluate expression="formAction.bindAndValidate">
            <attribute name="validatorMethod" value="validateSearchCriteria"/>
        </evaluate>
    </transition>
</view-state>

这是假设为 定义的验证器searchFormAction有一个名为 的方法validateSearchCriteria

于 2011-11-16T17:37:13.790 回答