您使用了“转发”一词,但听起来您想转到一个新页面(address.html)以收集有关该地址的更多信息。在这种情况下,您需要在用户操作完成后重定向到地址页。
<action name="user" > <!-- Redirect to another namespace --> <!-- for Struts 2.2 --> <result type="redirectAction"> <!-- for Struts 2.0 <result type="redirect-action"> --> <param name="actionName">collect-address</param> <param name="userId">${userId}</param> </result></action>$ {userId}语法将在UserAction上调用getUserId并传递您在问题中显示的参数:addressForm.html?user_id =
X。收集地址的成功结果可以进入addressForm.html。文档在这里。如果要避免使用其他操作,则可以尝试使用结果类型=“
redirect”,然后通过这种方式进行传递。
如果您确实要转发,则可以使用动作链接。Struts2团队的Ted Husted不鼓励这样做,但它可能对您有用。
代替动作链接,请尝试将完成此请求的所有代码放入单个动作中,并使用针对用户和地址的帮助程序或服务类来分隔和重用代码,而不是“动作链接”。



