Java 如何显示SpringWebFlow的内容';s";flowScope“;在JSP中?
我想在JSP页面上列出各种webflow上下文范围(viewScope、flowScope等)中的所有内容,以便进行调试(第一个webflow应用程序,尝试使其工作)。但我似乎没有正确的语法。谁能告诉我怎么做?我的flow.xml中有以下内容:Java 如何显示SpringWebFlow的内容';s";flowScope“;在JSP中?,java,jsp,spring-webflow,Java,Jsp,Spring Webflow,我想在JSP页面上列出各种webflow上下文范围(viewScope、flowScope等)中的所有内容,以便进行调试(第一个webflow应用程序,尝试使其工作)。但我似乎没有正确的语法。谁能告诉我怎么做?我的flow.xml中有以下内容: <view-state id="createAccount" model="account"> <on-render> <evaluate expression="flowService.create
<view-state id="createAccount" model="account">
<on-render>
<evaluate expression="flowService.createAccount()" result="flowScope.account" />
</on-render>
<transition on="next" to="applicationInfo" />
</view-state>
有人能告诉我怎么做吗?流动示波器是一个
你不可能忘记它。这就是为什么使用c:forEach
无法工作的原因
然而:
您可以使用${flowRequestContext.flowScope}
打印整个地图,但这看起来不太好看
有一个名为asMap
的函数继承自org.springframework.binding.collection.MapAdaptive
,该函数将其转换为java.util.Map(当然是可编辑的)flowScope是一个函数
你不可能忘记它。这就是为什么使用c:forEach
无法工作的原因
然而:
您可以使用${flowRequestContext.flowScope}
打印整个地图,但这看起来不太好看
有一个名为
asMap
的函数继承自org.springframework.binding.collection.MapAdaptive
,它将其转换为java.util.Map(当然是可编辑的)我根据Philipp Sander和“user1071914”的回答添加了我的示例:
flow.xml:
<view-state id="display" view="/WEB-INF/jsp/infoUser.jsp" model="dtoUser">
<on-entry>
<evaluate expression="flowRequestContext.flowScope.asMap()" result="requestScope.flowAsMap" />
<on-entry>
<transition on="next" to="checkUserAction" />
</view-state>
<action-state id="checkUserAction">
...
</action-state>
...
查看JSP:
<c:out value="${requestScope.flowAsMap['myvarflowScope']}" />
我根据Philipp Sander和“user1071914”的回答添加了我的示例: flow.xml:
<view-state id="display" view="/WEB-INF/jsp/infoUser.jsp" model="dtoUser">
<on-entry>
<evaluate expression="flowRequestContext.flowScope.asMap()" result="requestScope.flowAsMap" />
<on-entry>
<transition on="next" to="checkUserAction" />
</view-state>
<action-state id="checkUserAction">
...
</action-state>
...
查看JSP:
<c:out value="${requestScope.flowAsMap['myvarflowScope']}" />
谢谢!这似乎是问题的答案,但我无法理解从EL表达式调用asMap()的语法。我得到这个错误:“当没有指定默认名称空间时,函数asMap必须与前缀一起使用。”我讨厌贪婪,但是你知道怎么做吗?是的。我试的时候很困惑。但是您可以将asMap
的输出存储在flow scope中,然后使用c:forEach
对其进行迭代。是的,这很有效!我必须将它存储在流定义中的一个单独变量中(在“flow.xml”中),但它实际上起了作用。谢谢我很高兴能帮助你,汉克斯!这似乎是问题的答案,但我无法理解从EL表达式调用asMap()的语法。我得到这个错误:“当没有指定默认名称空间时,函数asMap必须与前缀一起使用。”我讨厌贪婪,但是你知道怎么做吗?是的。我试的时候很困惑。但是您可以将asMap
的输出存储在flow scope中,然后使用c:forEach
对其进行迭代。是的,这很有效!我必须将它存储在流定义中的一个单独变量中(在“flow.xml”中),但它实际上起了作用。谢谢我很高兴我能帮助您对于那些可能需要确切语法的人,请将此“evaluate”表达式添加到视图状态标记中:对于那些可能需要确切语法的人,请将此“evaluate”表达式添加到视图状态标记中: