亲亲宝宝,嗯,网站的,,,这边罗列了好多问题,原文出处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。