3

我正在尝试使用注释配置事务。当我在启用了加载时间编织的环境中运行时(例如,tc 服务器或带有编织类加载器的 tomcat),我的事务拦截似乎由 aspectj 处理,但由于它没有完全配置它不起作用(我收到消息"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.

4

1 回答 1

1

您必须在 spring xml 中定义 transactionManager bean。

<bean id="transactionManager"
  class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
  <property name="dataSource" ref="dataSource" />
 </bean>
于 2011-07-16T15:01:22.113 回答