java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z

转载 2015年11月18日 16:58:26

原文:http://blog.sina.com.cn/s/blog_4f925fc30102ep9h.html

使用spring + hibernate annotations的@OneToMany 一对多双向关联后出现异常: 

java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z 
出现这种异常通常是由于Myeclipse的javaee.jar 版本较低,与Hibernate等自带的JPA出现了冲突。 

网上一些处理方法是删除项目里的 删除 建立web项目时自带的Javaee.jar,可是这样带来的后果是 httpServletRequest 等组件无法使用。


在hibernate3.5之前,使用Annotation通常会引以下几个jar包:hibernate Annotaion 的包:hibernate-annotations.jar持久化:ejb3-persistence.jar

javax.persistence.OneToMany.class在ejb3-persistence.jar中。

Hibernate3.5以及之后的版本使用Annotation只需加hibernate-jpa-2.0-api-1.0.0.Final.jar
javax.persistence.OneToMany.class在hibernate-jpa-2.0-api-1.0.0.Final.jar所以如果hibernate-jpa-2.0-api-1.0.0.Final.jar 又加了ejb3-persistence.jar,就会出现此异常。

hiberante3.6.10与javaee.jar包的中的一些类库产生冲突造成的。


笔者这里的解决办法如下:
进入MyEclipse的安装路径 E:\MyWorker\Common\plugins\com.genuitec.eclipse.j2eedt.core_10.0.0.me201110301321\data\libraryset\EE_5
javaee.jar和jstl-1.2.jar两个包复制到其它位置,然后把javaee.jar中的persistence文件夹删除掉。


按照上图的方法做,就可以把调整后的jar加到项目工程中了,并且这两个jar包不在工程的lib目录下,打包的时候不会被打入工程中。





java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z

在本地调试ok后,将web应用程序部署至服务器tomcat 8.5后无法启动,提示以下错误: 13-Sep-2016 05:46:25.848 SEVERE [https-jsse-nio-44...

Caused by: java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z解决方案

不说别的先贴一段异常信息: Caused by: java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z ...

Caused by: java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z

这个异常是在我们配置spring + hibernate annotations的@OneToMany 一对多双向关联后出现的异常。 java.lang.NoSuchMethodError: j...

junit4测试ssh2出现错误javax.persistence.OneToMany.orphanRemoval()Z

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'goodsService...
  • zygzzp
  • zygzzp
  • 2013年07月13日 10:07
  • 1767

java.lang.NoSuchMethodError: javax.persistence.PersistenceContext.properties()

java.lang.NoSuchMethodError: javax.persistence.PersistenceContext.properties()[Ljavax/persistence/Pe...

Caused by: java.lang.NoSuchMethodError: javax.persistence.spi.PersistenceUnitInfo.getValidationMode(

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManage...

java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index

hibernate 4.3  使用hibernate4.3的时候获取SessionFactory和之前不一样,网上看到一篇(StackOverFlow里面的),可以使用下面的方式: package u...

Caused by: java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index

1、错误描述 WARN:2015-05-01 16:45:37[main] - Exception encountered during context initialization - cancel...

java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index;

使用hibernate4.3 出现这种问题,通过对比,我发现在model类中如果使用了Table(name="t_user"),就会报这样的错误,但是如果我写成@Entity(name="t_user...

java.lang.NoSuchMethodError: javax.servlet.JSP.PageContext.getELContext()LJAVAx/el/ELContext

dddd
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z
举报原因:
原因补充:

(最多只允许输入30个字)