Bean-компонент 'org.springframework.transaction.config.internalTransactionAdvisor' уже зарегистрирован - PullRequest
1 голос
/ 03 апреля 2019

Я определил тривиальное приложение SpringBoot Hibernate, скопированное из примера кода, найденного на случайном сайте в Интернете.Надеемся, что соответствующие части моего spring.xml выглядят так:

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
... details ommitted ...

<bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
... details ommitted ...

<bean id="transactionManager"
    class="org.springframework.orm.hibernate5.HibernateTransactionManager">
    <property name="sessionFactory" ref="sessionFactory" />
</bean>

<tx:annotation-driven transaction-manager="transactionManager" />

Почему я получаю эту ошибку?

bean 'org.springframework.transaction.config.internalTransactionAdvisor', определенный в пути к классам [org / springframework / транзакция / annotation / ProxyTransactionManagementConfiguration.class], не может быть зарегистрирован.Компонент с таким именем уже определен в null, а переопределение отключено.

Другие вещи, которые я уже пробовал

  • Использование org.springframework.jdbc.datasource.DataSourceTransactionManager- та же ошибка
  • Использование org.springframework.orm.jpa.JpaTransactionManager - та же ошибка
  • Удаление компонента transactionManager - хорошо, мое приложение SpringBoot работает, но теперь все мои тесты JUnit прерываются
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...