我正在使用AspectJ编译时编织和弹簧3.O.和Hibernate 3.0 ... AspectJ编织工作正常,如日志这样的简单事情,但这对于事务无法正常工作
<tx:annotation-driven transaction-manager="transactionManager"
mode="aspectj" order="1" />
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
sprong-aspects jar也存在于lib forlder中,但仍然没有事务支持..
我正在使用这样的
@Transactional(readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public void invokeService() throws Exception {
insertUpdatePolicy();
}
日志记录没有指定任何transactions..transactions正在使用spring aop工作正常但在spring容器中未定义类时没有使用aspectj
答案 0 :(得分:0)
请发布失败的实际代码。
启用日志记录。检查日志以查看是否甚至管理了事务。如果是,那么可能存在配置事务的方式的问题。
答案 1 :(得分:0)
我找到了这个问题的答案,
我们需要记住的一件事是,我们需要将spring-aspects.jar放置到我的Aspect Path而不是java class path.otherwise weaving不会完成,并且事务不起作用。
我在spring = bean config中配置后遗漏了第二件事。
<bean class="org.springframework.transaction.aspectj.AnnotationTransactionAspect" factory-method="aspectOf">
<property name="transactionManager" ref="transactionManager"/>