如何在 Struts 2 操作重定向中拥有动态参数名称?
因此,我尝试创建一个具有动态参数名称和值的操作重定向。我了解如何在 struts.xml 文件中对参数值执行此操作,但似乎无法正确评估参数名称。
<action name="SaveObject" method="save"
class="com.mysite.actions.ObjectAction">
<result name="success" type="redirectAction">
<param name="actionName">${actionName}</param>
<param name="${paramName}">${paramValue}</param>
</result>
</action>
现在我对 ${actionName} 和 ${paramValue} 绝对没有问题。 actionName、paramValue 和 paramName 在 ObjectAction 中都有适当命名的 getter/setter。
有谁知道如何让 ${paramName} 正确评估?它目前在 URL 中显示为“${paramName}”,我需要它作为 paramName 变量的值。由于我对 OGNL 的误解,我尝试使用 #paramName 和 %{paramName},它们在 URL 中也显示不正确。我也尝试过添加一个 parse=true 参数,但我相信 Struts 2 无论如何都会默认它。
So I'm trying to create an action redirect that has dynamic parameter names as well as values. I understand how to do this in the struts.xml file for parameter values, but cannot seem to get things to evaluate correctly for the parameter name.
<action name="SaveObject" method="save"
class="com.mysite.actions.ObjectAction">
<result name="success" type="redirectAction">
<param name="actionName">${actionName}</param>
<param name="${paramName}">${paramValue}</param>
</result>
</action>
Now the ${actionName} and ${paramValue} I have absolutely no issue with. actionName, paramValue, and paramName all have appropriately named getters/setters inside the ObjectAction.
Does anyone know how I can get the ${paramName} to evaluate correctly? It currently shows up as "${paramName}" in the URL and I need it to be the value of the paramName variable. I've tried using #paramName and %{paramName} due to my misunderstanding of OGNL and they all show up incorrectly in the URL as well. I've also tried adding a parse=true parameter, but I believe Struts 2 does that be default anyway.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
它正在发挥作用。
在 LoginAction.java 中
给出 url
现在在 HomeAction.java 中
并
在 Home.jsp 中
给出输出
It is working.
In LoginAction.java
Gives url
Now in HomeAction.java
And
In Home.jsp
Gives output