Spring JPA 5.0.6: org / hibernate / ejb / HibernatePersistence не найден - PullRequest
0 голосов
/ 13 июня 2018

(я знаю, что этот вопрос задавался ранее, но никогда не для Spring 5.x)

Я только что подобрал большое приложение Spring и получил задачу обновить Spring 3.2.16 до 5.0.6.,В связи с этим я также изменяю наш OpenJpa на Hibernate, потому что OpenJPA больше не поддерживается Spring (а версия 3 еще не выпущена, как мне кажется).

, поэтому мои зависимости

  • Spring 5.0.6.RELEASE
  • hibernate-jpa-2.1-api 1.0.0.Final
  • hibernate-core 5.3.1.Final

Я получаю следующее исключение:

Caused by: org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are:
PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'dataSource' threw exception; nested exception is java.lang.NoClassDefFoundError: org/hibernate/ejb/HibernatePersistence
        at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:101)
        at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:57)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1452)

Конфигурация выглядит как

    <bean id="ums.entityManagerFactory" 
          class="com.company.package.HibernateJPAEntityManagerFactoryBean"
          destroy-method="destroy">
        <property name="dataSource" ref="persistenceDataSource" />
        <property name="persistenceUnitName" value="ums"/>
        <property name="persistenceXmlLocation" value="classpath:META-INF/ums-persistence.xml" />
    </bean>

<bean id="persistenceDataSource" 
      class="com.company.package.AutoDriverBasicDataSource">
    <property name="url" value="jdbc:h2:data/persistence/persistence" />
    <property name="username" value="<username>" />
    <property name="password" value="<password>" />
</bean>

В setDataSource ofнаш entiyManager мы установили новый HibernateJpaDialect () и новый HibernateJpaVendorAdapter () .

hibernate-core имеет пакет org.hibernate.ejb , но без класса HibernatePersistence .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...