Linux安全网 - Linux操作系统_Linux 命令_Linux教程_Linux黑客

会员投稿 投稿指南 本期推荐:
搜索:
您的位置: Linux安全网 > Linux集群 > Architecture > » 正文

Struts2与urlrewrite整合

来源: zhangfeilo 分享至:

Struts2与URL Rewrite整合注意的地方

jar:http://tuckey.org/urlrewrite/dist/urlrewritefilter-2.6.zip

1.在重新定向的jsp界面中不要使用<s:include>标签,会发生空指针异常,你可以使用<jsp:include>去解决

2.web.xml中UrlRewrite过滤器要在struts2过滤器前面,在Struts2过滤器映射要这样写

<!-- FilterDispatcher用来初始化Struts 2并且处理所有的HTTP请求 --> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>*.action</url-pattern> <dispatcher>REQUEST </dispatcher> <dispatcher>FORWARD </dispatcher> <dispatcher>INCLUDE </dispatcher> </filter-mapping> <filter> <filter-name>UrlRewriteFilter</filter-name> <filter-class> org.tuckey.web.filters.urlrewrite.UrlRewriteFilter </filter-class> <init-param> <param-name>logLevel</param-name> <param-value>WARN</param-value> </init-param> </filter> <filter-mapping> <filter-name>UrlRewriteFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>

3.就是重定向之后的的路径问题 ,这个问题烦人,还有页面上的图片显示,单独打开时可以显示,但是定向之后就显示不出来了,解决这个问题没有同一的解决途径,根据具体情况自己去琢磨吧!但也不能胡思乱想主要从以下几个方面考虑:

(1.)文件的实际位置

(2.)重定向之后的位置,

(3.) Struts2中result转向的路径

(4.)还有可能跟struts2中配置文件中的package属性namescape有关,我在项目中就是用到了

urlrewrite.xml如下:

<rule> <note>login</note> <from>/login/([\a-zA-Z0-9_\u4e00-\u9fa5]+)/([\a-zA-Z0-9_\u4e00-\u9fa5]+)/</from> <to> /user/login.action?username=$1&amp;password=$2 </to> </rule>

([\a-zA-Z0-9_\u4e00-\u9fa5]+) 所对应的动态参数$N(N 表示第N个正则表达式

访问http://localhost:8085/Struts2Test/login/123/123/ 转到 http://localhost:8085/Struts2Test/user/login.action?username=123&password=123

struts.xml如下:

<package name="userWeb" extends="json-default" namespace="/userWeb/black"> <action name="userWebIndex" class="userWebIndexAction" method="userWebIndex"> <result name="success">index.jsp</result> </action> </package>

4.urlrewrite这是把丑陋的请求地址美化了一下,看起来想静态界面的请求地址,更利于搜索引擎的搜索到,根本不会提高打开界面的速度。

FROM: DK


Tags:
分享至:
最新图文资讯
1 2 3 4 5 6
验证码:点击我更换图片 理智评论文明上网,拒绝恶意谩骂 用户名:
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 发展历史