У меня есть простой случай использования только с грубыми операциями, и, как я вижу, не нужно поддерживать транзакции. От Stacktrace это кажется обязательным.
@Configuration
@ComponentScan("com.cap")
@EnableJpaRepositories
public class MyConfig{
@Bean
public LocalContainerEntityManagerFactoryBean entityManagerFactory() {
LocalContainerEntityManagerFactoryBean em
= new LocalContainerEntityManagerFactoryBean();
em.setDataSource(dataSource());
em.setPackagesToScan(new String[] { "com.cap" });
JpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter();
em.setJpaVendorAdapter(vendorAdapter);
em.setJpaProperties(additionalProperties());
return em;
}
@Bean
public DataSource dataSource(){
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/sakila?useSSL=false");
dataSource.setUsername( "root" );
dataSource.setPassword( "root");
return dataSource;
}
Исключение в потоке "main" org.springframework.beans.factory.NoSuchBeanDefinitionException: нет доступного компонента с именем "actionManager ": не найдено соответствие компоненту PlatformTransactionManager для квалификатораactionManager - не соответствует ни квалификатор, ни имя компонента!
в org.springframework.beans.factory.annotation.BeanFactoryAnnotationUtils.qualifiedBeanOfType (BeanFactoryAnnotationUtils.java:136)
в org.springframework.beans.factory.annotation.BeanFactoryAnnotationUtils.qualifiedBeanOfType (BeanFactoryAnnotationUtils.java:95)
в org.springframework.transaction.interceptor.TransactionAspectSupport.determineQualifiedTransactionManager (TransactionAspectSupport.java:406)
в org.springframework.transaction.interceptor.TransactionAspectSupport.determineTransactionManager (TransactionAspectSupport.java:387)
в org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction (TransactionAspectSupport.java:284)
в org.springframework.transaction.interceptor.TransactionInterceptor.invoke (TransactionInterceptor.java:98)
в org.springframework.aop.framework.ReflectiveMethodInvocation.proceed (ReflectiveMethodInvocation.java:186)
в org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke (PersistenceExceptionTranslationInterceptor.java:139)
в org.springframework.aop.framework.ReflectiveMethodInvocation.proceed (ReflectiveMethodInvocation.java:186)
at org.springframework.data.jpa.repository.support.CrudMethodMetadataPostProcessor $ CrudMethodMetadataPopulationMethodIntercceptor.invoke (CrudMethodMetadataPostProcessor.java:111)
в org.springframework.aop.framework.ReflectiveMethodInvocation.proceed (ReflectiveMethodInvocation.java:186)
в org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke (ExposeInvocationInterceptor.java:93)
в org.springframework.aop.framework.ReflectiveMethodInvocation.proceed (ReflectiveMethodInvocation.java:186)
в org.springframework.aop.framework.JdkDynamicAopProxy.invoke (JdkDynamicAopProxy.java:212)
на com.sun.proxy. $ Proxy25.findOne (неизвестный источник)
at com.capgemini.Application.main (Application.java:11)