现在的位置: 首页 > 综合 > 正文

[struct2]修改struts2的.action后缀名

2012年08月21日 ⁄ 综合 ⁄ 共 635字 ⁄ 字号 评论关闭

晕了,整了一个晚上,就是无法访问,原来是因为用了".do"的后缀名。改成".action"的后缀名就可以访问了。而且只能用"XXX.action"的形式,否则无法访问。

看来还是由于对struts2的过滤机制不是很清楚。

但是,我把web.xml设成这样竟然也不行:

<filter-mapping>
  <filter-name>struts2</filter-name>
  <url-pattern>*.do</url-pattern>
 </filter-mapping>

我觉得这一点就不太好了,应该可以自定义URL匹配的嘛。

为什么非要改到“struts.properties”文件里面呢。

既然“structs.properties”一般不修改,因此可以在“struts.xml”里面通过<constant>元素修改。

方法如下:

在struts.xml里面添加红色部分:

<struts>

……

<constant name="struts.action.extension" value="do,action" />

……

</struts>

其中value属性可以设置成你想要的后缀名,value="do,action",表示.action,.do都可以访问。

也可通过修改structs.properties文件来设定:

只需修改文件里面的struts.action.extension的值即可,多个值之间以逗号分开,比如“struts.action.extension=do,action ”

抱歉!评论已关闭.