spring-orm-4.2.6 与 hibernate-orm-5.2.0 不兼容
spring-orm-4.2.6 incompatible to hibernate-orm-5.2.0
最新的 Hibernate ORM 版本 (5.2.0) 呈现 Spring ORM(4.2.6,最新)不兼容,因为 Hibernate 必须将其 Session.getFlushMode 重命名为 Session.getHibernateFlushMode 导致此 NoSuchMethodError :
Caused by: java.lang.NoSuchMethodError:
org.hibernate.Session.getFlushMode()Lorg/hibernate/FlushMode; at
org.springframework.orm.jpa.vendor.HibernateJpaDialect.prepareFlushMode(HibernateJpaDialect.java:187)
at
org.springframework.orm.jpa.vendor.HibernateJpaDialect.prepareTransaction(HibernateJpaDialect.java:182)
at
org.springframework.orm.jpa.EntityManagerFactoryUtils.prepareTransaction(EntityManagerFactoryUtils.java:321)
at
org.springframework.orm.jpa.EntityManagerFactoryUtils.doGetTransactionalEntityManager(EntityManagerFactoryUtils.java:293)
什么时候Spring提供与 Hibernate 5.2.0 兼容的 HibernateJpaDialect?
再见
Spring Framework 4.3.0 将包括对 Hibernate 5.2 的支持。参见 https://jira.spring.io/browse/SPR-14327
最新的 Hibernate ORM 版本 (5.2.0) 呈现 Spring ORM(4.2.6,最新)不兼容,因为 Hibernate 必须将其 Session.getFlushMode 重命名为 Session.getHibernateFlushMode 导致此 NoSuchMethodError :
Caused by: java.lang.NoSuchMethodError: org.hibernate.Session.getFlushMode()Lorg/hibernate/FlushMode; at org.springframework.orm.jpa.vendor.HibernateJpaDialect.prepareFlushMode(HibernateJpaDialect.java:187) at org.springframework.orm.jpa.vendor.HibernateJpaDialect.prepareTransaction(HibernateJpaDialect.java:182) at org.springframework.orm.jpa.EntityManagerFactoryUtils.prepareTransaction(EntityManagerFactoryUtils.java:321) at org.springframework.orm.jpa.EntityManagerFactoryUtils.doGetTransactionalEntityManager(EntityManagerFactoryUtils.java:293)
什么时候Spring提供与 Hibernate 5.2.0 兼容的 HibernateJpaDialect?
再见
Spring Framework 4.3.0 将包括对 Hibernate 5.2 的支持。参见 https://jira.spring.io/browse/SPR-14327