用struts2和hibernate单独开发没有问题 为什么一整合就会出类似这样错误 Exception starting filter struts2 java.lang.NoClassDefFoundError: org/hibernate/criterion/Criterion
Caused by: java.lang.ClassNotFoundException: org.hibernate.criterion.Criterion
图片是引用的jar包,应该不是hibernate配置文件的问题,我用hibernate提供的工具创建了表 所以.....
一天了,都没有查明原因,请各位看看
[quote]那个错误发生在tomcat启动时! [/quote]
你是用的Myeclipse的部署把你的项目放到tomcat的嘛?如果是的,就照我说的方法试试!
ClassNotFoundException: org.hibernate.criterion.Criterion
我的事hibiscus3。2 里面有这个类
不知道LZ 是否核对了?
看着没有问题,看看你的Tomcat启动的时候时候加载了这些jar
不行就先把你的hibernate3.jar这个jar拷贝到你的Tomcat的lib目录里
莫非你用的是Myeclipse?这个玩意在你的工程部署的时候默认不会加入hibernate的jar包的。建议这样试试。
myeclipse -> add hibernate capabilities... ->
选中这个copy checked libraries to project folder and add to build-path
然后启动再试试!
microsoft提供的数据库驱动存在bug。需要换一种驱动连接,使用jtds(下载地址:http://sourceforge.net/projects/jtds/files/)下载jtds1.2版,解压得到jtds-1.2.jar,引用到eclipse中项目目录下(去除原驱动引用),更改hibernate配置文件:
原驱动连接配置:
com.microsoft.jdbc.sqlserver.SQLServerDriver
jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=hibernate
更改jtds连接:
net.sourceforge.jtds.jdbc.Driver
jdbc:jtds:sqlserver://127.0.0.1:1433;DatabaseName=hibernate
问题得到解决。补充:java代码调原驱动连接数据库是没有问题的,搭配hibernate会有此问题。