From 0d7375d92796cbf54839f67659edb3b751589947 Mon Sep 17 00:00:00 2001 From: Mattias Arthursson Date: Sat, 3 Jan 2009 10:33:36 +0000 Subject: [PATCH] Fix for LDAP-123: Now returning false from ContextSourceAndDataSourceTransactionManager#isNestedTransaction, properly inidicating that nested transactions are not supported. --- .../ContextSourceAndDataSourceTransactionManager.java | 8 ++++---- .../manager/ContextSourceTransactionManagerTest.java | 1 - 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/core/src/main/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceAndDataSourceTransactionManager.java b/core/src/main/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceAndDataSourceTransactionManager.java index 78563448..41fa481b 100644 --- a/core/src/main/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceAndDataSourceTransactionManager.java +++ b/core/src/main/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceAndDataSourceTransactionManager.java @@ -29,6 +29,8 @@ import org.springframework.transaction.support.DefaultTransactionStatus; * is not a JTA XA transaction; no two-phase commit will be performed, * and thus commit and rollback may yield unexpected results. * + * Note that nested transactions are not supported. + * * @author Mattias Hellborg Arthursson * @since 1.2 */ @@ -49,10 +51,8 @@ public class ContextSourceAndDataSourceTransactionManager extends * @see org.springframework.jdbc.datasource.DataSourceTransactionManager#isExistingTransaction(java.lang.Object) */ protected boolean isExistingTransaction(Object transaction) { - ContextSourceAndDataSourceTransactionObject actualTransactionObject = (ContextSourceAndDataSourceTransactionObject) transaction; - - return super.isExistingTransaction(actualTransactionObject - .getDataSourceTransactionObject()); + // We don't support nested transactions here + return false; } /* diff --git a/core/src/test/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceTransactionManagerTest.java b/core/src/test/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceTransactionManagerTest.java index 4e408fc1..67d5a7cf 100644 --- a/core/src/test/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceTransactionManagerTest.java +++ b/core/src/test/java/org/springframework/ldap/transaction/compensating/manager/ContextSourceTransactionManagerTest.java @@ -17,7 +17,6 @@ package org.springframework.ldap.transaction.compensating.manager; import java.sql.Connection; -import java.sql.SQLException; import javax.naming.directory.DirContext; import javax.sql.DataSource;