I made the following changes and it appears to have fixed the issue: <sqlMapConfig> <settings cacheModelsEnabled="true" enhancementEnabled="true" lazyLoadingEnabled="true" errorTracingEnabled="false" maxRequests="32" maxSessions="10" maxTransactions="5" useStatementNamespaces="false" />
<transactionManager type="EXTERNAL" commitRequired="true"> <property name="DefaultAutoCommit" value="false"/> <property name="SetAutoCommitAllowed" value="false"/> <dataSource type="JNDI"> <property name="DataSource" value="${fooDbPool.JNDIName}" /> </dataSource> </transactionManager> <!-- Identify all SQL Map XML files to be loaded by this SQL map. Notice the paths are relative to the classpath. --> <sqlMap resource="ibatis/mappings/foo/ProviderFacilityDAO.xml" /> <sqlMap resource="ibatis/mappings/foo/ProviderZipCodeRegionsDAO.xml" /> </sqlMapConfig> Now my distributed transaction is properly working between the three schemas. Thanks, -jay -- View this message in context: http://www.nabble.com/Failed-transaction-commits-half-of-transaction-t1851138.html#a5056529 Sent from the iBATIS - User - Java forum at Nabble.com.