diff --git a/spring-tx/src/main/java/org/springframework/transaction/jta/WebLogicJtaTransactionManager.java b/spring-tx/src/main/java/org/springframework/transaction/jta/WebLogicJtaTransactionManager.java index d493e950b4..b9d9474388 100644 --- a/spring-tx/src/main/java/org/springframework/transaction/jta/WebLogicJtaTransactionManager.java +++ b/spring-tx/src/main/java/org/springframework/transaction/jta/WebLogicJtaTransactionManager.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2012 the original author or authors. + * Copyright 2002-2013 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -56,6 +56,11 @@ import org.springframework.transaction.TransactionSystemException; * "transactionManager"/"transactionManagerName", passing in existing handles * or specifying corresponding JNDI locations to look up. * + *

NOTE: This JtaTransactionManager is intended to refine specific transaction + * demarcation behavior on Spring's side. It will happily co-exist with independently + * configured WebLogic transaction strategies in your persistence provider, with no + * need to specifically connect those setups in any way. + * * @author Juergen Hoeller * @since 1.1 * @see org.springframework.transaction.TransactionDefinition#getName @@ -136,11 +141,10 @@ public class WebLogicJtaTransactionManager extends JtaTransactionManager { } } - private void loadWebLogicTransactionHelper() throws TransactionSystemException { if (this.transactionHelper == null) { try { - Class transactionHelperClass = getClass().getClassLoader().loadClass(TRANSACTION_HELPER_CLASS_NAME); + Class transactionHelperClass = getClass().getClassLoader().loadClass(TRANSACTION_HELPER_CLASS_NAME); Method getTransactionHelperMethod = transactionHelperClass.getMethod("getTransactionHelper"); this.transactionHelper = getTransactionHelperMethod.invoke(null); logger.debug("WebLogic TransactionHelper found"); @@ -159,7 +163,7 @@ public class WebLogicJtaTransactionManager extends JtaTransactionManager { private void loadWebLogicTransactionClasses() throws TransactionSystemException { try { - Class userTransactionClass = getClass().getClassLoader().loadClass(USER_TRANSACTION_CLASS_NAME); + Class userTransactionClass = getClass().getClassLoader().loadClass(USER_TRANSACTION_CLASS_NAME); this.weblogicUserTransactionAvailable = userTransactionClass.isInstance(getUserTransaction()); if (this.weblogicUserTransactionAvailable) { this.beginWithNameMethod = userTransactionClass.getMethod("begin", String.class); @@ -171,13 +175,13 @@ public class WebLogicJtaTransactionManager extends JtaTransactionManager { } // Obtain WebLogic ClientTransactionManager interface. - Class transactionManagerClass = + Class transactionManagerClass = getClass().getClassLoader().loadClass(CLIENT_TRANSACTION_MANAGER_CLASS_NAME); logger.debug("WebLogic ClientTransactionManager found"); this.weblogicTransactionManagerAvailable = transactionManagerClass.isInstance(getTransactionManager()); if (this.weblogicTransactionManagerAvailable) { - Class transactionClass = getClass().getClassLoader().loadClass(TRANSACTION_CLASS_NAME); + Class transactionClass = getClass().getClassLoader().loadClass(TRANSACTION_CLASS_NAME); this.forceResumeMethod = transactionManagerClass.getMethod("forceResume", Transaction.class); this.setPropertyMethod = transactionClass.getMethod("setProperty", String.class, Serializable.class); logger.debug("Support for WebLogic forceResume available"); @@ -296,7 +300,6 @@ public class WebLogicJtaTransactionManager extends JtaTransactionManager { } } - @Override public Transaction createTransaction(String name, int timeout) throws NotSupportedException, SystemException { if (this.weblogicUserTransactionAvailable && name != null) { diff --git a/spring-tx/src/main/java/org/springframework/transaction/jta/WebSphereUowTransactionManager.java b/spring-tx/src/main/java/org/springframework/transaction/jta/WebSphereUowTransactionManager.java index 3480a11741..77a82cd1fe 100644 --- a/spring-tx/src/main/java/org/springframework/transaction/jta/WebSphereUowTransactionManager.java +++ b/spring-tx/src/main/java/org/springframework/transaction/jta/WebSphereUowTransactionManager.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2012 the original author or authors. + * Copyright 2002-2013 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -71,6 +71,11 @@ import org.springframework.util.ReflectionUtils; * simply specify the actual location through this transaction manager's * "uowManagerName" bean property. * + *

NOTE: This JtaTransactionManager is intended to refine specific transaction + * demarcation behavior on Spring's side. It will happily co-exist with independently + * configured WebSphere transaction strategies in your persistence provider, with no + * need to specifically connect those setups in any way. + * * @author Juergen Hoeller * @since 2.5 * @see #setUowManager