struts2与urlrewrite整合

web.xml中配置

<filter>
<filter-name>UrlRewriteFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>

<!-- 配置struts -->
<filter>
<filter-name>struts2</filter-name>
<!-- <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> -->
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>

 

 

注意点 :

   1.两个filter的顺序不能变,urlrewrite的过滤器在前,struts2的在后面

   2.必须配置

       <dispatcher>REQUEST</dispatcher>
       <dispatcher>FORWARD</dispatcher>

         否则无法重定向

   3.struts2中采用<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> 来过滤,否则拦截器报空指针

posted @ 2013-03-08 10:21  虎猫  阅读(177)  评论(0编辑  收藏  举报