Я пытаюсь включить переплетение времени загрузки с помощью менеджера транзакций Spring, но без особой удачи. В настоящее время я просто пытаюсь запустить простой em.persist () в методе @Transactional, но это не похоже на выполнение транзакции, как видно из: TransactionSynchronizationManager.isActualTransactionActive()
Файл контекста моего приложения содержит:
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean">
<property name="persistenceUnitName" value="TEST-pu"/>
</bean>
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory"/>
</bean>
<tx:annotation-driven transaction-manager="transactionManager" mode="aspectj" proxy-target-class="true"/>
А мой pom.xml содержит:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-agent</artifactId>
<version>2.5.4</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>3.0.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.6.10</version>
</dependency>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.4</version>
<configuration>
<forkMode>once</forkMode>
<argLine>
-javaagent:${settings.localRepository}/org/springframework/spring-agent/2.5.4/spring-agent-2.5.4.jar
</argLine>
<useSystemClassloader>true</useSystemClassloader>
</configuration>
</plugin>
Казалось бы, есть какая-то проблема с настройкой, и хотя я натолкнулся на довольно много примеров того, как реализовать AspectJ / Load timeaving, все они, похоже, используют плагины Eclipse, которые 1) я пытаюсь избежать используя любой вид плагинов и 2) я использую Intellij. Любая помощь будет высоко ценится.
Спасибо.