Tomcat但不是Jetty:NoSuchMethodError:javax.persistence.JoinColumn.foreignKey()Ljavax / persistence / ForeignKey

时间:2014-05-07 09:24:43

标签: spring hibernate tomcat jetty wicket

我最近将我的Wicket 6应用程序从Spring 3升级到Spring 4。

当我在Jetty 7上本地运行应用程序时,运行正常。

当我将它部署到Tomcat 7时,我收到以下错误:

  

[2014-05-07 10:20:47,121] ERROR [org.springframework.web.context.ContextLoader]上下文初始化失败   org.springframework.beans.factory.BeanCreationException:在ServletContext资源[/WEB-INF/applicationContext.xml]中定义名称为'sessionFactory'的bean时出错:init方法的调用失败;嵌套异常是java.lang.NoSuchMethodError:javax.persistence.JoinColumn.foreignKey()Ljavax / persistence / ForeignKey;

这是一个Tomcat问题还是应该继续尝试解决嵌套异常java.lang.NoSuchMethodError:javax.persistence.JoinColumn.foreignKey()?

如果问题确实与foreignKey有关,那为什么Jetty上不会出现问题?

spring.version 4.0.4.RELEASE

hibernate.version 4.3.5.Final

dataSource:class =“org.apache.commons.dbcp.BasicDataSource”destroy-method =“close”

2 个答案:

答案 0 :(得分:2)

nested exception is java.lang.NoSuchMethodError: javax.persistence.JoinColumn.foreignKey()Ljavax/persistence/ForeignKey

此错误发生在javax.persistence.ForeignKey类的冲突版本中。检查你的类路径,如果你正在使用maven,请检查依赖项。

答案 1 :(得分:0)

对我来说,在将我的项目降级到java 6并将hibernate-entitymanager版本降级到3.6.9.FINAL

之后问题已修复