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

来自ling
跳转至: 导航搜索
 解决办法:把工程中hibernate-jpa-2.0-api-1.0.0.Final.jar包拷贝到

D:\bea\jdk160_11\jre\lib\ext 目录下。

使用spring + hibernate annotations的@OneToMany 一对多双向关联后出现异常: java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z 出现这种异常通常是由于Myeclipse的javaee.jar 版本较低,与Hibernate等自带的JPA出现了冲突。 网上一些处理方法是删除项目里的 删除 建立web项目时自带的Javaee.jar,可是这样带来的后果是 httpServletRequest 等组件无法使用。 对于tomcat我目前的解决方法是: 1. 在 D:\Program Files\Genuitec\Common\plugins下搜索 EE_5 找到EE_5 文件夹; 2. 进去EE_5文件夹 右键 javaee.jar 打开方式 WINRAR压缩文件管理器,进去里面删除persistence文件夹 这个子文件夹。

对于weblogic我的解决方法是: 把hibernate-jpa-2.0-api-1.0.0.Final.jar放到D:\Program Files\weblogic\jdk160_05\jre\lib\ext 就没问题了。 (如果不行,可以考虑先尝试tomcat的解决方案,再接着试weblogic的。tomcat是修改java的jdk文件,而weblogic是修改本服务器里面的文件)


was

D:\server\IBM\WebSphere\AppServer\java\jre\lib\ext