Struts2 访问后缀设置

来源:互联网 发布:魔兽世界副本数据库 编辑:程序博客网 时间:2024/05/01 06:45
原文地址:http://hi.baidu.com/%B2%DD%D4%AD%C0%C7dyp/blog/item/7ddccf84fbdc002567096e99.html

FilterDispatcher是Struts 2框架的核心控制器,它负责拦截由<url-pattern>/*</url-pattern>指定的所有用户请求,当用户请求到达时,该Filter会过滤用户请求。默认情况下,如果用户请求的路径以.action结尾,该请求将被转入Struts 2框架处理,否则该请求将略过Struts 2框架的处理。
方法一:
默认处理的后缀是可以通过常量”struts.action.extension“进行修改的,如下面配置Struts 2只处理以.do为后缀的请求路径:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
    <constant name="struts.action.extension" value="do"/>
</struts>

如果用户需要指定多个请求后缀,则多个后缀之间以英文逗号(,)隔开。如:
 <constant name="struts.action.extension" value="do,go"/>

方法二: 

     在struts.properties文件中加入一行配置信息:struts.action.extension=json

方法三:

     在web.xml文件中给filter加上init-param属性,代码如下所示

<filter>

         <filter-name>struts2</filter-name>

        <filter-class> org.apache.struts2.dispatcher.FilterDispatcher </filter-class>

        <init-param>

                   <param-name>struts.action.extension</param-name>

                    <param-value>json</param-value>

       </init-param>

 </filter>

<filter-mapping>

          <filter-name>struts2</filter-name>

          <url-pattern>*.json</url-pattern>

</filter-mapping>  

原创粉丝点击