Question

J'utilise Spring 3.0.3, 3.0.2 et mybatis mybatis-printemps sur Apache Tomcat 1.0.0 6.0.29.

J'ai utilisé les transactions déclaratives du printemps pour la gestion des transactions. Le problème est que les transactions ne fonctionnent pas pour moi. La transaction ne fonctionne qu'une fois et par la suite rien.

Je l'ai essayé de vérifier tous mes configs, mais pas la moindre idée. Tous les pointeurs?

Mes configurations ressemble à ceci -

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

EDIT après commentaire -------------

Je commence le serveur et exécuter certaines fonctionnalités transactionnelles et quelques fois ça marche et quelques fois il ne fonctionne pas. Parfois, il continue à travailler pour 5-6 fois et puis tout à coup, il arrête.

TX Manager et config 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>
Était-ce utile?

La solution

Avez-vous vous avez configuré ou source de données au printemps Tomcat? (Tomcat a un certain défaut bizarre paramètre qui commits auto après chaque déclaration que je suppose que rend difficile d'exécuter un DataSourceTransactionManager sur le dessus)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top