diff --git a/applications/accounting/src/main/java/org/apache/ofbiz/accounting/thirdparty/paypal/PayPalServices.java b/applications/accounting/src/main/java/org/apache/ofbiz/accounting/thirdparty/paypal/PayPalServices.java index 4538bca7a4..e79edf4a92 100644 --- a/applications/accounting/src/main/java/org/apache/ofbiz/accounting/thirdparty/paypal/PayPalServices.java +++ b/applications/accounting/src/main/java/org/apache/ofbiz/accounting/thirdparty/paypal/PayPalServices.java @@ -212,7 +212,9 @@ public static Map payPalCheckoutUpdate(DispatchContext dctx, Map boolean beganTransaction = false; Transaction parentTransaction = null; try { - parentTransaction = TransactionUtil.suspend(); + if (TransactionUtil.isTransactionInPlace()) { + parentTransaction = TransactionUtil.suspend(); + } beganTransaction = TransactionUtil.begin(); } catch (GenericTransactionException e1) { Debug.logError(e1, MODULE); diff --git a/applications/order/src/main/java/org/apache/ofbiz/order/order/OrderServices.java b/applications/order/src/main/java/org/apache/ofbiz/order/order/OrderServices.java index 8386d73865..2ce471b7d0 100644 --- a/applications/order/src/main/java/org/apache/ofbiz/order/order/OrderServices.java +++ b/applications/order/src/main/java/org/apache/ofbiz/order/order/OrderServices.java @@ -5623,7 +5623,9 @@ public static Map callProcessOrderPayments(DispatchContext dctx, Transaction trans = null; try { // disable transaction processing - trans = TransactionUtil.suspend(); + if (TransactionUtil.isTransactionInPlace()) { + trans = TransactionUtil.suspend(); + } // get the cart ShoppingCart cart = (ShoppingCart) context.get("shoppingCart"); diff --git a/framework/common/src/main/java/org/apache/ofbiz/common/login/LdapAuthenticationServices.java b/framework/common/src/main/java/org/apache/ofbiz/common/login/LdapAuthenticationServices.java index f2cef68a8e..fc6a095dbf 100644 --- a/framework/common/src/main/java/org/apache/ofbiz/common/login/LdapAuthenticationServices.java +++ b/framework/common/src/main/java/org/apache/ofbiz/common/login/LdapAuthenticationServices.java @@ -123,7 +123,9 @@ public static boolean userLogin(DispatchContext ctx, Map context) { boolean beganTransaction = false; try { try { - parentTx = TransactionUtil.suspend(); + if (TransactionUtil.isTransactionInPlace()) { + parentTx = TransactionUtil.suspend(); + } } catch (GenericTransactionException e) { Debug.logError(e, "Could not suspend transaction: " + e.getMessage(), MODULE); } diff --git a/framework/common/src/main/java/org/apache/ofbiz/common/login/LoginServices.java b/framework/common/src/main/java/org/apache/ofbiz/common/login/LoginServices.java index 10c6ed3216..d846b189c2 100644 --- a/framework/common/src/main/java/org/apache/ofbiz/common/login/LoginServices.java +++ b/framework/common/src/main/java/org/apache/ofbiz/common/login/LoginServices.java @@ -320,7 +320,9 @@ public static Map userLogin(DispatchContext ctx, Map try { try { - parentTx = TransactionUtil.suspend(); + if (TransactionUtil.isTransactionInPlace()) { + parentTx = TransactionUtil.suspend(); + } } catch (GenericTransactionException e) { Debug.logError(e, "Could not suspend transaction: " + e.getMessage(), MODULE); } diff --git a/framework/entity/src/main/java/org/apache/ofbiz/entity/util/SequenceUtil.java b/framework/entity/src/main/java/org/apache/ofbiz/entity/util/SequenceUtil.java index d77e6e8d52..397d120283 100644 --- a/framework/entity/src/main/java/org/apache/ofbiz/entity/util/SequenceUtil.java +++ b/framework/entity/src/main/java/org/apache/ofbiz/entity/util/SequenceUtil.java @@ -195,7 +195,9 @@ private void fillBank(long stagger) { Transaction suspendedTransaction = null; try { - suspendedTransaction = TransactionUtil.suspend(); + if (TransactionUtil.isTransactionInPlace()) { + suspendedTransaction = TransactionUtil.suspend(); + } boolean beganTransaction = false; try { diff --git a/framework/service/src/main/java/org/apache/ofbiz/service/GenericAbstractDispatcher.java b/framework/service/src/main/java/org/apache/ofbiz/service/GenericAbstractDispatcher.java index 7e56968a85..4d28c0ab65 100644 --- a/framework/service/src/main/java/org/apache/ofbiz/service/GenericAbstractDispatcher.java +++ b/framework/service/src/main/java/org/apache/ofbiz/service/GenericAbstractDispatcher.java @@ -120,7 +120,9 @@ public void schedule(String jobName, String poolName, String serviceName, Map