【问题标题】:spring webflow, evaluate expression ignored in transitionspring webflow,评估表达式在转换中被忽略
【发布时间】:2012-09-05 11:55:35
【问题描述】:

我有一个流定义为流

<view-state id="view1" view="/jsp/view1.xhtml">
    <transition on="login" to="view1" >
       <evaluate expression="'test1'" result="viewScope.t1"/>
       <evaluate expression="'test2'" result="viewScope.t2"/>
    </transition>
</view-state>

View1.xhtml:

${t1}<br/>
${t2}

在 view1.xhtml 中,我打印了两个变量 t1 和 t2,但只打印了“test1”。第二个表达式在转换中被忽略。为什么会这样?

【问题讨论】:

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


    【解决方案1】:

    http://static.springsource.org/spring-webflow/docs/2.3.x/reference/htmlsingle/spring-webflow-reference.html#view-transitions

    当在转换上定义了多个动作时,如果一个返回错误结果,则集合中的其余动作将不会被执行。

    现在,还阅读了该部分,我认为只有false 会被视为错误结果,但也许它不是“成功”值。你的经历似乎证明了这一点。 (我以为我在某处找到了一个列表,其中列出了哪些返回值被认为是成功和失败,但我现在没有找到它。)

    但是,你能用&lt;set&gt;代替&lt;evaluate&gt;吗?

    <transition on="login" to="view1" >
        <set name="viewScope.t1" value="'test1'" />
        <set name="viewScope.t2" value="'test2'" />
    </transition>
    

    【讨论】:

    • 非常感谢。这很有帮助。我好像更新错地方了。
    猜你喜欢
    • 1970-01-01
    • 2012-02-13
    • 2011-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-17
    • 2021-10-20
    相关资源
    最近更新 更多