Hibernate异常集锦及解决方法1
Hibernate错误集锦及解决办法1
1.case by: java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z 网络上方法: 1.hibernate-jpa-2.0-api-1.0.0.Final和ejb3-persistence有冲突,如果升级到 Hibernate3.5 那么可以把ejb3-persistence干掉 2解决办法:删除对Java EE 5 Libraries的使用。 问题原因:javaee.jar中的部分类与hibernate-jpa-2.0-api-1.0.0.Final.jar存在版本冲突。 OneToMany.orphanRemoval()Z解决,和思考 转自(http://yifanxiang.blog.163.com/blog/static/500008342010427936238 /) 在整合和写oa时,发现一个问题,新的版本不一定是稳定的版本,可能存大n多bug. 就目前而言,比较好用的版本是: spring2.5,hibernate3.3,struts2.1.12(当前目前都可以用annotation) 原因(spring2.5主包集中,好用一些,用spring3.0.2也没问题, hibernate3.5 的javax.persistence.OneToMany.orphanRemoval()Z 现在都没解决 struts2.com.opensymphony.xwork2.util.TextUtils 的问题,最好是加入struts2.1.12里的xwork包,还不如用struts2.1.12) 以下是出现的问题: 5:使用MyEclipse创建JavaEE5.0的Web项目,在使用Hibernate3.5.1的注解功能时出现错误: java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z 。 我程序出现找个错误,主要是在建立关系之后,如果实体,没有通过注解建立关系,就不会出现错误。 单个的hibernate3.5.2用起来没有任何问题,一结合spring3.0就报错。 解决办法:降低 hibernate的版本为3.3。 问题原因:javaee.jar中的部分类与hibernate-jpa-2.0- api-1.0.0.Final.jar存在版本冲突。 但是如果删除了Java EE 5 Libraries,写程序会有很大麻烦. 多次测试,用了好多版本, 后面还是降低 hibernate的版本为3.3 (其它的方法无解决,下了最新的Hibernate3.5.2也不行,)这个合spring的版本无关。 6.org.hibernate.MappingException: Unknown entity: com.lovo.cq.po.User 用老版本spring2.5时 如果你的po写在com.lovo.cq.po里,但是在beans.xml里 <property name="packagesToScan"> <list> <value>com.lovo.cq</value> </list> </property> 写成这样就会出错。 改成 <property name="packagesToScan"> <list> <value>com.lovo.cq.po</value> </list> </property> 写成这样就会出错。 新版本的spring3.0.2就不会报错 2,Caused by: java.lang.ClassNotFoundException: javax.persistence.Entity 网上方法:1.:加入Hibernate文件夹下的ejb3-persistence.jar