Struts2.1.8升级到Struts2.3.15.1的时候遇到了问题

我把原来的Struts2.1.8升级到Struts2.3.15.1的时候遇到了一下问题,找不到解决办法: 

在原来的项目中删除的包有: 
asm-commons-2.2.3.jar 
Commons-fileupload-1.2.jar 
Commons-io-1.3.2.jar 
Commons-logging-1.0.4.jar 
Ognl-2.7.3.jar 
Struts2-core-2.1.8.jar 
Struts2-json-plugin-2.1.8.jar 
Struts2-junit-plugin-2.2.1.jar 
Struts2-spring-plugin-2.2.1.jar 
Xwork-core-2.1.6.jar 

新加进来的包有: 
Asm-3.3.jar 
Asm-commons-3.3.jar 
Commons-fileupload-1.3.jar 
Commons-io-2.0.1.jar 
Commons-lang-2.4.jar 
Commons-lang3-3.1.jar 
Commons-logging-1.1.3.jar 
Javassist-3.11.0.GA.jar 
Ognl-3.0.6.jar 
Struts2-core-2.3.15.1.jar 
Struts2-json-plugin-2.3.15.1.jar 
Struts2-junit-plugin-2.3.15.1.jar 
Struts2-spring-plugin-2.3.15.1.jar 
Xwork-core-2.3.15.1.jar 

项目正常运行。 
-------------------------------------------------------- 
遇到的问题,这个问题在版本更新之前是没有的: 
路径A能够正常访问: 
http://192.168.0.87/wx/wxtest.html?keyword=asdasd 

对路径A进行了urlrewrite配置,如下: 

Java代码   收藏代码
  1. <rule>  
  2.     <from>/wx/wxtest/(.*).html?(.*)</from>  
  3.     <to type="redirect">/wx/wxtest.html?keyword=$1&amp;asd=$2</to>   
  4. </rule>  



访问地址B测试: 
http://192.168.0.87/wx/wxtest/aaa.html?bbb 

参数keyword=aaa 
参数asd=null 

问题分析:进行urlrewrite配置后,请求路径中?后面的数据被过滤掉使Action不能正常获取。 
但是没进行urlrewrite配置的路径中?后面的参数整个正常传递到Action。 

不知道是哪里的问题? 

有没有把struts相关的配置文件头改为: 

Java代码   收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE struts PUBLIC  
  3.     "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"  
  4.     "http://struts.apache.org/dtds/struts-2.3.dtd">  

猜你喜欢

转载自zfei.iteye.com/blog/1922399
今日推荐