gpt4 book ai didi

struts2 - struts2 xml 中的动态全局结果

转载 作者:行者123 更新时间:2023-12-02 01:51:02 25 4
gpt4 key购买 nike

我的需要是在 struts.xml 中有一个全局结果,其中包含要重定向到的操作的动态值。喜欢,

<global-results>
<result name="customResult" type="redirectAction">
<param name="actionName">${customValue}</param>
<param name="namespace">/</param>
</result>
</global-results>

这个 customResult 是从我的拦截器之一返回的。 customValue与getter和setter是同一个拦截器的成员。

我知道特定于操作的结果可以包含动态值,前提是动态参数应该在特定操作的执行方法中分配其值。而且,该动态参数应该是该操作类的成员。

因为这里需要全局结果,所以我将动态参数设置为 interceptop 的成员,我在其中返回特定的全局结果。但是,这个 ${customValue} 在重定向时没有获取值。它很容易被重定向到 localhost:9080/myapp/.action。

请推荐

最佳答案

操作属性将被放入值堆栈中,这就是为什么当您在配置中有一个表达式(如 ${customValue})时,将使用适当的 getter 检索值。为了在拦截器中实现相同的行为,您可以将所需的值直接放入值堆栈中。可以从 invocationContext 中检索值堆栈。

invocation.getInvocationContext().getValueStack()
.set("customValue", "some_action");

关于struts2 - struts2 xml 中的动态全局结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22679564/

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