개발중/Java Persistence API (JPA)
[JPA ERROR] No qualifying bean of type 'org.springframework.transaction.TransactionManager' available
Binsoo
2023. 3. 15. 15:49
728x90
반응형
트랜잭션을 사용하려하는데 트랜잭션이 하나 이상일 때 발생하는 에러라고 한다.
트랙잭션에 우선순위를 @Primary @Qualifier 어노테이션을 사용해 부여할 수도 있지만
설정 파일에 트랜잭션 참조 설정을 추가해주는 방식으로 해결했다.
@Configuration
@PropertySource({ "classpath:application.properties" })
@EnableJpaRepositories(
entityManagerFactoryRef = "pomsEntityManagerFactory"
, transactionManagerRef = "pomsTransactionManager"
, basePackages = "com.rsn.test.api.*.dao.*"
)
public class PomsJpaConfiguration extends PomsConfiguration {
...
@Primary
@Bean(name = "pomsTransactionManager")
public PlatformTransactionManager transactionManager(EntityManagerFactory entityManagerFactory) {
JpaTransactionManager jpaTransactionManager = new JpaTransactionManager();
jpaTransactionManager.setEntityManagerFactory(entityManagerFactory);
return jpaTransactionManager;
}
...
}
참조 블로그
728x90
반응형