通常,我将在项目中使用以下框架:Spring MVC + Hibernate,以Tomcat为容器。
而且我从不关心版本,越晚越好。
这是项目中的具体SDK,框架版本:
JDK 1.7
Spring Framework:
spring-webmvc >> 4.1.6.RELEASE
Hibernate:
hibernate-entitymanager >> 4.3.10.Final
org.hibernate.javax.persistence >> hibernate-jpa-2.1-api >> 1.0.0.Final
Tomcat 7
该应用程序在tomcat下运行良好,但是将应用程序从Tomcat部署到Java EE Server(仅支持JavaEE 5)时遇到了一些问题。
我收到的错误之一是:
java.lang.NoSuchMethodError: javax.persistence.Table.indexes()
似乎indexes
是JPA2.1(JavaEE 7支持)中的新方法,而Java EE服务器未提供它。
但是如图所示,hibernate依赖项org.hibernate.javax.persistence >> hibernate-jpa-2.1-api >> 1.0.0.Final
提供了方法,为什么Java EE Server无法使用该方法?
为了解决这个问题,对于给定的JavaEE Server说它仅支持JavaEE 5,选择JDK框架时应考虑什么?
JPA 2.1适用于JavaEE7和Java 7及更高版本。
为了使JavaEE与JDK版本兼容,我将看一下之前的StackOverflow问题。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句