Salut tout les springeurs
J'ai un projet spring avec Jotm:
Ma datasource est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
<bean id="dataSource"
        class="org.apache.commons.dbcp.managed.BasicManagedDataSource"
        destroy-method="close">
        <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
        <property name="url"
            value="jdbc:oracle:thin:@${datasource.host}:${datasource.port}:${datasource.sid}" />
        <property name="username" value="${datasource.user}" />
        <property name="password" value="${datasource.password}" />
        <property name="defaultAutoCommit" value="false" />
        <property name="transactionManager" ref="jotm" />
    </bean>
Le bean jotm :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
<bean id="jotmFactory"	class="com.mule.extras.jotm.JotmTransactionManagerFactory">
        <property name="defaultTimeout" value="60"/>
    </bean>
 
	<bean id="jotm" factory-bean="jotmFactory" factory-method="create"/>
Mon problème est avec:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<property name="defaultAutoCommit" value="false" />
pas de persistance des données à la base.
si je la met à true ou si je supprime cette ligne entièrement alors les données seront persister dans la base mais avec cette solution j'ai peur que si une exception se produit au cours de la transaction, une partie des données sera persister et une autre sera ignoré, comme si la transaction n'est pas élémentaire.
Alors ma question :

Est ce que ma configuration(datasource et transaction avec Jotm) est bonne ?
Et comment je dois faire pour assurer que la transaction soit entièrement persister ou rejeter et que dois-je faire avec cette propriété defaultAutoCommit.

Merci