我似乎对spring注释驱动的事务管理和tomcat有问题。 这些是我在项目中使用的一些bean:
<bean id="dataSource" class="service.myBatis.RoutingDataSource"> </bean>
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
<tx:annotation-driven transaction-manager="transactionManager" />
当我在eclipse中运行项目时,一切正常。但是当我在tomcat中运行项目时,它并没有超越bean的创建。它也没有给我一个错误或任何错误的迹象。
日志显示它完成了实例化bean然后它突然破坏所有bean:
[DEBUG] 12 jul 09:28:55.888 AM localhost-startStop-1 [org.springframework.beans.factory.support.DefaultListableBeanFactory]
Finished creating instance of bean 'org.springframework.transaction.config.internalTransactionAdvisor'
[INFO] 12 jul 09:28:55.895 AM localhost-startStop-1 [org.springframework.beans.factory.support.DefaultListableBeanFactory]
Destroying singletons in........
如果删除<tx:annotation-driven transaction-manager="transactionManager" />
行,项目将在tomcat和eclipse中正常启动。
通常,如果某些东西在eclipse中工作而在tomcat中没有,那么它是由tomcat找不到某个类/ lib或资源引起的。我不知道是什么导致这个
有人能告诉我这是什么问题吗?为什么它会在不给出错误的情况下销毁所有bean?
答案 0 :(得分:0)
我明白了。导致问题的不是春天,这是我项目中的其他问题。错误被放在一些tomcat日志而不是控制台。所以似乎没有错误。