关闭

Struts2.0升级到2.3出现的一些问题

133人阅读 评论(0) 收藏 举报
分类:

亲亲宝宝,嗯,网站的,,,这边罗列了好多问题,原文出处http://www.wenhq.com/article/view_745.html

struts2.0被发现有严重漏洞,需要升级到新版本,更换struts2的核心包后出现问题。

1、java.lang.NoClassDefFoundError: com/opensymphony/xwork2/util/logging/LoggerF

更换xwork.jar包后解决;

2、struts的配置文件报错redirect-action;

解决办法:Result type=“redirect-action”更改为redirectAction;

3、ActionContextCleanUp <<< is deprecated! Please use the new filters!        *

http://struts.apache.org/2.x/docs/webxml.html

解决办法:修改web.Xml中FilterDispatcher为StrutsPrepareAndExecuteFilter。

FilterDispatcher是struts2.0.x到2.1.2版本的核心过滤器.

StrutsPrepareAndExecuteFilter是自2.1.3开始就替代了FilterDispatcher的.

StrutsPrepareAndExecuteFilter是StrutsPrepareFilter和StrutsExecuteFilter的组合。

这样的改革当然是有好处的.

为什么这么说.? 应该知道如果我们自己定义过滤器的话, 是要放在strtus2的过滤器之前的, 如果放在struts2过滤器之后,你自己的过滤器对action的过滤作用就废了,不会有效!除非你是访问jsp/html!

那我现在有需求, 我必须使用Action的环境,而又想在执行action之前拿filter做一些事, 用FilterDispatcher是做不到的.!

那么StrutsPrepareAndExecuteFilter可以把他拆分成StrutsPrepareFilter和StrutsExecuteFilter,可以在这两个过滤器之间加上我们自己的过滤器.!

4、java.lang.ClassNotFoundException: javassist.ClassPool

在maven repo里面,struts2-core 依赖于ognl, ognl运行时需要”javassist”但却不包含在tomcat里面,因此,需要自己加上javassist-3.11.0.GA.jar。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    文章分类