做很多功能时候url使用xxx.jsp?xx=xx&xx=xx类似这种形式感觉很不友好,网上搜了下插件,于是使用了UrlRewriteFilter。
项目地址:http://www.tuckey.org/urlrewrite/
文档很详细,具体配置不多说,注意web.xml中过滤器顺序(编码过滤器我方在最前,其次是url重写的,最后是struts2及其他的)。
下面记录下urlrewrite.xml中的说明
<rule>节点可以理解为正向,如下所示,即是将/xx/xx映射到login.jsp
<rule> <from>^/kfseed/login/res/(.*)</from> <to type="redirect">%{context-path}/login.jsp</to> </rule>
<outbound-rule>节点可以理解为反向,即是将XXX.jsp?xxx=xx映射到XX/XX上
<outbound-rule> <from>/kfseed/login.jsp\?res=(.*)</from> <to>%{context-path}/login/res/$1</to> </outbound-rule>
其中注意xx.jsp?中问号也要使用正则匹配。
ps:-------------
遇到的问题:
反向在页面中没问题,正向时去报找不到action,但UrlRewriteFilter是按照要求放在struts2过滤器之前的。待解决