Hibernate 3.6中@OneToMany注解部署到WebSphere7上报错的解决办法

项目中使用到了Hibernate 3.6,在PO类中使用了@OneToMany注解

在Tomcat上部署运行正常,但是部署到webSphere7上出现问题,报错如下:

Caused by: java.lang.NoSuchMethodError: javax/persistence/OneToMany.orphanRemoval()Z
	at org.hibernate.cfg.AnnotationBinder.processElementAnnotations(AnnotationBinder.java:1912)
	at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:707)
	... 118 more

这是未能正常加载hibernate-jpa-2.0-api-1.0.0.Final.jar这个jar导致的

因为WebSphere7的类加载路径用有同样的类实现导致jar包冲突,且加载在本包内部jar包之前,所以可以将hibernate-jpa-2.0-api-1.0.0.Final.jar复制到WAS7_FOLDER\AppServer\java\jre\lib\ext下,并重启was即可解决该问题


注意:不推荐删掉was中的jar包,可能导致其他问题!

你可能感兴趣的:(java,tomcat,Hibernate,jar,ext,websphere)