【问题标题】:Spring webflow PropertyNotFoundException: Property not foundSpring webflow PropertyNotFoundException:找不到属性
【发布时间】:2012-06-01 20:45:33
【问题描述】:

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

118484 [http-8080-6] 调试 servlet.YBRServlet - 处理程序执行 导致异常 - 转发到已解决的错误视图: ModelAndView:引用名为“Err010DfltCrtc”的视图;模型是 {异常=org.springframework.webflow.execution.ActionExecutionException: 执行 [AnnotatedAction@87ba9e targetAction = 时抛出异常 [SetAction@1ed364c 名称 = flowRequestContext.externalContext.sessionMap.testCompleted,值 = 是],属性 = map[[empty]]] 在状态 'AnnIncr' 的流 'QlfyEnrl' -- 动作执行属性是'map[[empty]]'} org.springframework.webflow.execution.ActionExecutionException: 执行 [AnnotatedAction@87ba9e targetAction = 时抛出异常 [SetAction@1ed364c 名称 = flowRequestContext.externalContext.sessionMap.testCompleted,值 = 是],属性 = map[[empty]]] 在状态 'AnnIncr' 的流 'QlfyEnrl' -- 动作执行属性为'map[[empty]]' at org.springframework.webflow.execution.ActionExecutor.execute(ActionExecutor.java:60) 在 org.springframework.webflow.engine.ActionList.execute(ActionList.java:155) 在 org.springframework.webflow.engine.State.enter(State.java:193) 在 org.springframework.webflow.engine.Transition.execute(Transition.java:227) 在 org.springframework.webflow.engine.DecisionState.doEnter(DecisionState.java:51) 造成的: org.springframework.binding.expression.PropertyNotFoundException: 未找到物业 org.springframework.binding.expression.spel.SpringELExpression.getValue(SpringELExpression.java:87) 在

org.springframework.expression.spel.SpelEvaluationException: EL1008E*:(pos 0): 在对象上找不到字段或属性“是”* 类型 'org.springframework.webflow.engine.impl.RequestControlContextImpl' 在 org.springframework.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) 在 org.springframework.expression.spel.standard.SpelExpression.getValue(SpelExpression.java:97) 在 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 个空格。
  • 根本原因:Field or property 'yes' cannot be found on object of type org.springframework.webflow.engine.impl.RequestControlContextImpl'

标签: java spring-webflow


【解决方案1】:

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

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

应该是

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

【讨论】:

    猜你喜欢
    • 2012-02-17
    • 1970-01-01
    • 2015-01-29
    • 1970-01-01
    • 1970-01-01
    • 2019-05-10
    • 1970-01-01
    • 1970-01-01
    • 2015-07-25
    相关资源
    最近更新 更多