gpt4 book ai didi

java - 从 flow.xml 打印日志

转载 作者:行者123 更新时间:2023-11-30 03:25:56 24 4
gpt4 key购买 nike

我正在使用 Spring Web Flow 开发一个 Web 应用程序。当我处理 flow.xml 文件时,我得到了这样的决策状态 -

<decision-state id="checkPermissin">    
<if test="requestParameters.canApprove" then="approve" else="warning" />
</decision-state>

当请求到达 flow.xml 时,它会从中获取请求参数 canApprove 并测试它是 true 还是 false。然后进入 approvewarning 状态。

我的问题是 - 我可以从 flow.xml 文件记录/打印 canApprove 的状态吗?

最佳答案

您可以将退出标记添加到“决策状态”的末尾,并调用类路径上的任何服务方法、spring bean 或静态方法。

试试这个(未经测试):

<decision-state id="checkPermissin">    
<if test="requestParameters.canApprove" then="approve" else="warning" />
<on-exit>
<evaluate expression="T(org.apache.log4j.Logger).getLogger('someLogger').info(requestParameters.canApprove)"/>
</on-exit>
</decision-state>

上面的解决方案更多的是满足您的要求的黑客。记录此情况的“正确”方法是扩展 FlowExecutionListenerAdapter 并监听当前流 + 决策状态 id“checkPermissin”,然后记录您想要的有关该流的任何内容,但这将涉及 flow.xml 文件之外的更多设置/编码。 (请参阅:Catch "dead" session in Spring webflow:该示例用于捕获异常,但可以轻松调整以记录流程中的任何内容)

关于java - 从 flow.xml 打印日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30223805/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com