我正在使用struts2应用程序。
我有一个表单,一旦他提交触发一个动作:
<action name="AddDataAction" class="saisie.AddAction" method="add">
我需要创建一个中间页面,用户在执行此操作之前需要再次登录。
最难的是我只能修改struts.xml以创建该中间状态,并且在用户登录后,它必须使用表单中的参数执行此addDataAction方法(要保存在数据库中)。 / p>
我考虑过拦截器,但是如果用户正确登录,他们是否可以重定向到jsp并调用动作来验证用户登录,同时保存要保存的表单数据?
答案 0 :(得分:0)
您可以使用结果类型redirectAction来实现此目的。
<action name="OtherAction" class="saisie.OtherAction" method="otherMethod">
<result name="redirect" type="redirectAction">
<param name="actionName">loginAction</param>
<param name="yourParamName">${yourParamName}</param>
</result>
</action>
您可以通过将参数值添加到结果中来保留参数值。注意使用$ {}。它的作用是调用相应的getter并将它们添加到url中。然后在下一页上,这些值将使用setter
映射到相应的变量您可以阅读有关redirectAction结果here
的更多信息