我正在尝试使用注释配置事务。当我在启用了加载时间编织的环境中运行时(例如,tc服务器或带有编织类加载器的tomcat),似乎我的事务拦截由aspectj处理,但由于它没有完全配置它不起作用(I得到一条消息"Skipping transactional joinpoint [<method name>] because no transaction manager has been configured"
)。
我的配置说明<tx:annotation-driven mode="proxy" transaction-manager="transactionManager" />
。那些应该都是默认值,但我明确指定代理模式并获得aspectj模式。如果我切换到模式aspectj它可以工作,但我们的生产环境没有启用LTW,我更喜欢在任何地方使用模式代理。
知道发生了什么事吗?我在Spring 3.0.5上,正在使用HibernateTransactionManager
。
答案 0 :(得分:1)
您必须在spring xml中定义transactionManager bean。
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>