首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

strut2配置异常集合

2012-09-09 
strut2配置错误集合用tomcat6启动时,出现下面的错误java.lang.NoClassDefFoundError: Lcom/opensymphony/x

strut2配置错误集合
用tomcat6启动时,出现下面的错误
java.lang.NoClassDefFoundError: Lcom/opensymphony/xwork2/util/logging/Logger;

Caused by: java.lang.ClassNotFoundException: com.opensymphony.xwork2.util.logging.Logger

原因是struts2的包和xwork的包的版本不同
我用的是
xwork-2.0.4.jar

struts2-core-2.1.8.1.jar

那么struts2-core-2.1.8.1.jar包下面的org.apache.struts2.dispatcher.FilterDispatcher类有一个log全局变量
private Logger log = LoggerFactory.getLogger(FilterDispatcher.class);

LoggerFactory是在
com.opensymphony.xwork2.util.logging.LoggerFactory;

而xwork-2.0.4.jar没有这个类,要下载xwork-2.1.2.jar以上的版本才Yui有这个logging包


下载网址是
http://www.opensymphony.com/xwork/download.action

把xwork-2.0.4.jar换为xwork-2.1.2.jar重新启动项目就ok了



太郁闷了,struts2的这些jar包存在很严重的兼容问题,其原因在于jar中类的实现需要在另外一个jar中实现,但是jar的版本很多,struts2.1.x添加了struts2.0.x没有的接口,那么就需要其他jar也跟着更新,必须需要好好整理下,有些时候需要去tomcat  /webapp/文件下删除失败项目,然后重新启动项目才会生效

热点排行