0

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>
4

1 に答える 1

0

Spring または Tomcat でデータソースを構成しましたか? (Tomcatには、すべてのステートメントの後に自動コミットするという奇妙なデフォルト設定があり、DataSourceTransactionManagerを上で実行するのが難しいと思います)

于 2010-12-15T20:57:45.820 に答える