lj258595660
2010-08-20 20:44
浏览 266
已采纳

struts2+hibernate整合

用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提供的工具创建了表 所以.....
一天了,都没有查明原因,请各位看看

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • 「已注销」 2010-08-21 10:42
    已采纳

    [quote]那个错误发生在tomcat启动时! [/quote]

    你是用的Myeclipse的部署把你的项目放到tomcat的嘛?如果是的,就照我说的方法试试!

    点赞 评论
  • oyj7454103 2010-08-20 20:52

    ClassNotFoundException: org.hibernate.criterion.Criterion

    我的事hibiscus3。2 里面有这个类
    不知道LZ 是否核对了?

    点赞 评论
  • 「已注销」 2010-08-20 20:56

    看着没有问题,看看你的Tomcat启动的时候时候加载了这些jar

    不行就先把你的hibernate3.jar这个jar拷贝到你的Tomcat的lib目录里

    点赞 评论
  • 「已注销」 2010-08-20 21:04

    莫非你用的是Myeclipse?这个玩意在你的工程部署的时候默认不会加入hibernate的jar包的。建议这样试试。

    myeclipse -> add hibernate capabilities... ->
    选中这个copy checked libraries to project folder and add to build-path

    然后启动再试试!

    点赞 评论
  • liuyanwei114 2012-07-15 16:10

    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会有此问题。

    点赞 评论

相关推荐 更多相似问题