Apache Tomcat6.0.29でSpring3.0.3、MyBatis 3.0.2、mybatis-spring1.0.0を使用しています。
トランザクション管理には、春の宣言型トランザクションを使用しました。問題は、トランザクションが機能していないことです。トランザクションは1回だけ機能し、その後は何も機能しません。
私はすべての設定をチェックしようとしましたが、手がかりはありません。ポインタはありますか?
私の構成は次のようになります-
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="*" propagation="REQUIRED" />
</tx:attributes>
</tx:advice>
<aop:config>
<aop:pointcut id="dtxops"
expression="execution(* com.service.*.*(..))" />
<aop:advisor advice-ref="txAdvice" pointcut-ref="dtxops" />
</aop:config>
コメント後に編集-------------
サーバーを起動してトランザクション機能を実行しますが、機能する場合と機能しない場合があります。時々それは5-6回働き続け、そして突然それは止まります。
TXマネージャーとDS構成-
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource">
<ref bean="dataSource" />
</property>
</bean>
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="resourceRef" value="true" />
<property name="jndiName" value="java:comp/env/jdbc/MyDBInstance" />
</bean>