3

我正在尝试从 spring webflow xml 定义中设置会话范围内的变量并点击属性未找到..请帮助

118484 [http-8080-6] DEBUG servlet.YBRServlet - 处理程序执行导致异常 - 转发到已解决的错误视图:ModelAndView:引用名为“Err010DfltCrtc”的视图;模型是 {exception=org.springframework.webflow.execution.ActionExecutionException: 异常抛出执行 [AnnotatedAction@87ba9e targetAction = [SetAction@1ed364c name = flowRequestContext.externalContext.sessionMap.testCompleted, value = yes], attributes = map[[empty] ]] 在流 'QlfyEnrl' 的状态 'AnnIncr' 中 -- 动作执行属性是 'map[[empty]]'} org.springframework.webflow.execution.ActionExecutionException: 执行 [AnnotatedAction@87ba9e targetAction = [SetAction@1ed364c name = flowRequestContext.externalContext.sessionMap.testCompleted, value = yes],

org.springframework.expression.spel.SpelEvaluationException: EL1008E* :(pos 0):在 org.springframework 的 * 类型“org.springframework.webflow.engine.impl.RequestControlContextImpl”的对象上找不到字段或属性“yes” 。 expression.spel.ast.PropertyOrFieldReference.readProperty(PropertyOrFieldReference.java:180) 在 org.springframework.expression.spel.ast.PropertyOrFieldReference.getValueInternal(PropertyOrFieldReference.java:60) 在 org.springframework.expression.spel.ast.SpelNodeImpl。 getTypedValue(SpelNodeImpl.java:102) at org.springframework.expression.spel.standard.SpelExpression.getValue(SpelExpression.java:97) at org.springframework.binding.expression.spel.SpringELExpression.getValue(SpringELExpression.java:84) ... 88 更多

流程代码

<view-state id="AnnIncr" view="AnnIncr" model="ssModel">
<on-entry>

            <set name="flowRequestContext.externalContext.sessionMap.testCompleted" value="yes"></set>
        </on-entry>
.....
    <on-exit>
    <set name="flowRequestContext.externalContext.sessionMap.testCompleted" value="no"></set>
    </on-exit>
</view-state>
4

1 回答 1

10

我发现了问题,在双引号内我必须用单引号包裹值以将其表示为一个值,否则它需要一个表达式。

 <set name="flowRequestContext.externalContext.sessionMap.testCompleted" value="yes"></set>

它应该是

<set name="flowRequestContext.externalContext.sessionMap.testCompleted" value="'yes'"></set>
于 2012-05-27T03:24:24.570 回答