关于Struts2中.action的一些问题

今天遇到一个比较郁闷的问题,就是在使用a标签跳转到Action之后,使用redirectAction会出现传递参数丢失的问题。具体情况如下:
jsp中:
<a href="xxx?id=${id}&category=${category}">提交</a>
struts配置:
<action name="xxx" class="yyyAction" method="xxx">
    <result type="redirectAction">zzz?id=${id}&category=${category}</result>
</action>
点击提交后,跳转xxx执行功能,再跳转zzz,但是后边传递的id和category莫名丢失。

经过各种实验和查询后,得出处理方法如下:
将xxx?id=${id}&category=${category}该为xxx.action?id=${id}&category=${category}即可(加入.action后缀)。
并且在查询中,了解到Struts2中,.action是一个默认的后缀,该后缀只能在form提交中产生作用,而作为链接时,.action后缀是必须要加的,也就是说我们可以写如下的代码:
<s:form action="xxx">
    <s:submit value="提交">
</s:form>
或者是
<s:a href="xxx.action">提交</s:a>

你可能感兴趣的:(struts2)