[jboss-svn-commits] JBL Code SVN: r32456 - in labs/jbosstm/trunk: ArjunaJTA/jta/classes/com/arjuna/ats/jta/common and 9 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Apr 7 05:49:52 EDT 2010


Author: jhalliday
Date: 2010-04-07 05:49:50 -0400 (Wed, 07 Apr 2010)
New Revision: 32456

Added:
   labs/jbosstm/trunk/ArjunaJTA/jta/tests/classes/com/hp/mwtests/ts/jta/basic/EnvironmentBeanTest.java
Modified:
   labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/TransactionManager.java
   labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/UserTransaction.java
   labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/common/JTAEnvironmentBean.java
   labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/common/JTAEnvironmentBeanMBean.java
   labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/utils/JNDIManager.java
   labs/jbosstm/trunk/ArjunaJTA/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/ToolInitializer.java
   labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/arjuna/ats/jtax/tests/implicit/client/ImplicitClient.java
   labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/arjuna/ats/jtax/tests/implicit/server/ImplicitServer.java
   labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTAAbort.java
   labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTAOrder.java
   labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTATest.java
   labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTATransactionCommitTest.java
   labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/NullResource.java
   labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/Performance.java
   labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/SuspendResume.java
   labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/ThreadedCommit.java
   labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/hammer/JTAHammer.java
   labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/nested/SimpleNestedTest.java
   labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/twophase/SimpleTest.java
Log:
Continue moving class loading responsibility to the environment bean classes. JBTM-735


Modified: labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/TransactionManager.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/TransactionManager.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/TransactionManager.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -73,41 +73,6 @@
 	
     public synchronized static javax.transaction.TransactionManager transactionManager ()
     {
-		return transactionManager(false);
+		return jtaPropertyManager.getJTAEnvironmentBean().getTransactionManager();
     }
-
-    /**
-     * Retrieve the singleton transaction manager reference.
-     * 
-     * @param reset if <code>true</code> then ignore any previous cached implementation
-     * and get a new instance.
-     * @return The singleton transaction manager.  Can return null if the instantiation failed.
-     */
-	
-    public synchronized static javax.transaction.TransactionManager transactionManager (boolean reset)
-    {
-        if ((_transactionManager == null ) || (reset))
-        {
-            try
-            {
-                _transactionManager = (javax.transaction.TransactionManager) Thread.currentThread().getContextClassLoader().loadClass(jtaPropertyManager.getJTAEnvironmentBean().getJtaTMImplementation()).newInstance();
-            }
-            catch (Exception e)
-            {
-                if ( jtaLogger.loggerI18N.isErrorEnabled() )
-                {
-                    jtaLogger.loggerI18N.error("com.arjuna.ats.jta.TransactionManager.generalfailure", e);
-                }
-            }
-        }
-
-        return _transactionManager;
-    }
-	
-    public static final void initialise (String[] args)
-    {
-    }
-
-    private static javax.transaction.TransactionManager	_transactionManager = null;
-    
 }

Modified: labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/UserTransaction.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/UserTransaction.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/UserTransaction.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -78,38 +78,6 @@
 	
 	public static synchronized javax.transaction.UserTransaction userTransaction ()
 	{
-		return userTransaction(false);
+		return jtaPropertyManager.getJTAEnvironmentBean().getUserTransaction();
 	}
-
-	/**
-	 * Retrieve the singleton UserTransaction reference.
-	 * 
-	 * @param reset if <code>true</code> then ignore any previous cached implementation
-     * and get a new instance.
-	 * @return The singleton UserTransaction reference. Can return null if the
-	 *         instantiation failed.
-	 */
-	
-	public static synchronized javax.transaction.UserTransaction userTransaction (boolean reset)
-	{
-		try
-		{
-			if ((_userTransaction == null) || (reset))
-			{
-				_userTransaction = (javax.transaction.UserTransaction) Thread.currentThread().getContextClassLoader().loadClass(jtaPropertyManager.getJTAEnvironmentBean().getJtaUTImplementation()).newInstance();
-			}
-		}
-		catch (Exception e)
-		{
-			if (jtaLogger.loggerI18N.isErrorEnabled())
-			{
-				jtaLogger.loggerI18N.error("com.arjuna.ats.jta.UserTransaction.generalfailure", e);
-			}
-		}
-
-		return _userTransaction;
-	}
-	
-	private static javax.transaction.UserTransaction _userTransaction = null;
-
 }

Modified: labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/common/JTAEnvironmentBean.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/common/JTAEnvironmentBean.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/common/JTAEnvironmentBean.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -20,9 +20,13 @@
  */
 package com.arjuna.ats.jta.common;
 
+import com.arjuna.ats.internal.arjuna.common.ClassloadingUtility;
 import com.arjuna.common.internal.util.propertyservice.PropertyPrefix;
 import com.arjuna.common.internal.util.propertyservice.FullPropertyName;
 import com.arjuna.common.internal.util.propertyservice.ConcatenationPrefix;
+import javax.transaction.TransactionManager;
+import javax.transaction.TransactionSynchronizationRegistry;
+import javax.transaction.UserTransaction;
 
 import java.util.List;
 import java.util.ArrayList;
@@ -37,10 +41,15 @@
 {
     private volatile boolean supportSubtransactions = false;
 
-    private volatile String jtaTMImplementation = "com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionManagerImple";
-    private volatile String jtaUTImplementation = "com.arjuna.ats.internal.jta.transaction.arjunacore.UserTransactionImple";
-    private volatile String jtaTSRImplementation = "com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionSynchronizationRegistryImple";
+    private volatile String transactionManagerClassName = "com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionManagerImple";
+    private volatile TransactionManager transactionManager = null;
 
+    private volatile String userTransactionClassName = "com.arjuna.ats.internal.jta.transaction.arjunacore.UserTransactionImple";
+    private volatile UserTransaction userTransaction = null;
+
+    private volatile String transactionSynchronizationRegistryClassName = "com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionSynchronizationRegistryImple";
+    private volatile TransactionSynchronizationRegistry transactionSynchronizationRegistry = null;
+
     @ConcatenationPrefix(prefix = "com.arjuna.ats.jta.xaRecoveryNode")
     private volatile List<String> xaRecoveryNodes = new ArrayList<String>();
 
@@ -91,75 +100,249 @@
     }
 
     /**
-     * Returns the classname of the javax.transaction.TransactionManager implementation.
+     * Returns the class name of the javax.transaction.TransactionManager implementation.
      *
      * Default: "com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionManagerImple"
-     * Equivalent deprecated property: com.arjuna.ats.jta.jtaTMImplementation
+     * Equivalent deprecated property: com.arjuna.ats.jta.transactionManagerClassName
      *
      * @return the name of the class implementing TransactionManager.
      */
-    public String getJtaTMImplementation()
+    public String getTransactionManagerClassName()
     {
-        return jtaTMImplementation;
+        return transactionManagerClassName;
     }
 
     /**
-     * Sets the classname of the javax.transaction.TransactionManager implementation.
+     * Sets the class name of the javax.transaction.TransactionManager implementation.
      *
-     * @param jtaTMImplementation the name of a class which implements TransactionManager.
+     * @param transactionManagerClassName the name of a class which implements TransactionManager.
      */
-    public void setJtaTMImplementation(String jtaTMImplementation)
+    public void setTransactionManagerClassName(String transactionManagerClassName)
     {
-        this.jtaTMImplementation = jtaTMImplementation;
+        synchronized(this)
+        {
+            if(transactionManagerClassName == null)
+            {
+                this.transactionManagerClassName = null;
+            }
+            else if(!transactionManagerClassName.equals(this.transactionManagerClassName))
+            {
+                this.transactionManagerClassName = null;
+            }
+            this.transactionManagerClassName = transactionManagerClassName;
+        }
     }
 
     /**
-     * Returns the classname of the javax.transaction.UserTransaction implementation.
+     * Returns an instance of a class implementing javax.transaction.TransactionManager.
      *
+     * If there is no pre-instantiated instance set and classloading or instantiation fails,
+     * this method will log an appropriate warning and return null, not throw an exception.
+     *
+     * @return a javax.transaction.TransactionManager implementation instance, or null.
+     */
+    public TransactionManager getTransactionManager()
+    {
+        if(transactionManager == null && transactionManagerClassName != null)
+        {
+            synchronized(this) {
+                if(transactionManager == null && transactionManagerClassName != null) {
+                    TransactionManager instance = ClassloadingUtility.loadAndInstantiateClass(TransactionManager.class,  transactionManagerClassName);
+                    transactionManager = instance;
+                }
+            }
+        }
+
+        return transactionManager;
+    }
+
+    /**
+     * Sets the instance of javax.transaction.TransactionManager
+     *
+     * @param instance an Object that implements javax.transaction.TransactionManager, or null.
+     */
+    public void setTransactionManager(TransactionManager instance)
+    {
+        synchronized(this)
+        {
+            TransactionManager oldInstance = this.transactionManager;
+            transactionManager = instance;
+
+            if(instance == null)
+            {
+                this.transactionManagerClassName = null;
+            }
+            else if(instance != oldInstance)
+            {
+                String name = ClassloadingUtility.getNameForClass(instance);
+                this.transactionManagerClassName = name;
+            }
+        }
+    }
+
+    /**
+     * Returns the class name of the javax.transaction.UserTransaction implementation.
+     *
      * Default: "com.arjuna.ats.internal.jta.transaction.arjunacore.UserTransactionImple"
-     * Equivalent deprecated property: com.arjuna.ats.jta.jtaUTImplementation
+     * Equivalent deprecated property: com.arjuna.ats.jta.userTransactionClassName
      *
      * @return the name of the class implementing javax.transaction.UserTransaction.
      */
-    public String getJtaUTImplementation()
+    public String getUserTransactionClassName()
     {
-        return jtaUTImplementation;
+        return userTransactionClassName;
     }
 
     /**
-     * Sets the classname of the javax.transaction.UserTransaction implementation.
+     * Sets the class name of the javax.transaction.UserTransaction implementation.
      *
-     * @param jtaUTImplementation the name of a class which implements UserTransaction.
+     * @param userTransactionClassName the name of a class which implements javax.transaction.UserTransaction.
      */
-    public void setJtaUTImplementation(String jtaUTImplementation)
+    public void setUserTransactionClassName(String userTransactionClassName)
     {
-        this.jtaUTImplementation = jtaUTImplementation;
+        synchronized(this)
+        {
+            if(userTransactionClassName == null)
+            {
+                this.userTransaction = null;
+            }
+            else if(!userTransactionClassName.equals(this.userTransactionClassName))
+            {
+                this.userTransaction = null;
+            }
+            this.userTransactionClassName = userTransactionClassName;
+        }
     }
 
     /**
-     * Returns the classname of the javax.transaction.TransactionSynchronizationRegistry implementation.
+     * Returns an instance of a class implementing javax.transaction.UserTransaction.
      *
+     * If there is no pre-instantiated instance set and classloading or instantiation fails,
+     * this method will log an appropriate warning and return null, not throw an exception.
+     *
+     * @return a javax.transaction.UserTransaction implementation instance, or null.
+     */
+    public UserTransaction getUserTransaction()
+    {
+          if(userTransaction == null && userTransactionClassName != null)
+        {
+            synchronized (this) {
+                if(userTransaction == null && userTransactionClassName != null) {
+                    UserTransaction instance = ClassloadingUtility.loadAndInstantiateClass(UserTransaction.class, userTransactionClassName);
+                    userTransaction = instance;
+                }
+            }
+        }
+
+        return userTransaction;
+    }
+
+    /**
+     * Sets the instance of javax.transaction.UserTransaction
+     *
+     * @param instance an Object that implements javax.transaction.UserTransaction, or null.
+     */
+    public void setUserTransaction(UserTransaction instance)
+    {
+        synchronized(this)
+        {
+            UserTransaction oldInstance = this.userTransaction;
+            userTransaction = instance;
+
+            if(instance == null)
+            {
+                this.userTransactionClassName = null;
+            }
+            else if(instance != oldInstance)
+            {
+                String name = ClassloadingUtility.getNameForClass(instance);
+                this.userTransactionClassName = name;
+            }
+        }
+    }
+
+    /**
+     * Returns the class name of the javax.transaction.TransactionSynchronizationRegistry implementation.
+     *
      * Default: "com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionSynchronizationRegistryImple"
-     * Equivalent deprecated property: com.arjuna.ats.jta.jtaTSRImplementation
+     * Equivalent deprecated property: com.arjuna.ats.jta.transactionSynchronizationRegistryClassName
      *
      * @return the name of the class implementing javax.transaction.TransactionSynchronizationRegistry.
      */
-    public String getJtaTSRImplementation()
+    public String getTransactionSynchronizationRegistryClassName()
     {
-        return jtaTSRImplementation;
+        return transactionSynchronizationRegistryClassName;
     }
 
     /**
-     * Sets the classname of the javax.transaction.TransactionSynchronizationRegistry implementation.
+     * Sets the class name of the javax.transaction.TransactionSynchronizationRegistry implementation.
      *
-     * @param jtaTSRImplementation the name of a class which implements TransactionSynchronizationRegistry.
+     * @param transactionSynchronizationRegistryClassName the name of a class which implements TransactionSynchronizationRegistry.
      */
-    public void setJtaTSRImplementation(String jtaTSRImplementation)
+    public void setTransactionSynchronizationRegistryClassName(String transactionSynchronizationRegistryClassName)
     {
-        this.jtaTSRImplementation = jtaTSRImplementation;
+        synchronized(this)
+        {
+            if(transactionSynchronizationRegistryClassName == null)
+            {
+                this.transactionSynchronizationRegistry = null;
+            }
+            else if(!transactionSynchronizationRegistryClassName.equals(this.transactionSynchronizationRegistryClassName))
+            {
+                this.transactionSynchronizationRegistry = null;
+            }
+            this.transactionSynchronizationRegistryClassName = transactionSynchronizationRegistryClassName;
+        }
     }
 
     /**
+     * Returns an instance of a class implementing javax.transaction.transactionSynchronizationRegistry.
+     *
+     * If there is no pre-instantiated instance set and classloading or instantiation fails,
+     * this method will log an appropriate warning and return null, not throw an exception.
+     *
+     * @return a javax.transaction.TransactionSynchronizationRegistry implementation instance, or null.
+     */
+    public TransactionSynchronizationRegistry getTransactionSynchronizationRegistry()
+    {
+          if(transactionSynchronizationRegistry == null && transactionSynchronizationRegistryClassName != null)
+        {
+            synchronized (this) {
+                if(transactionSynchronizationRegistry == null && transactionSynchronizationRegistryClassName != null) {
+                    TransactionSynchronizationRegistry instance = ClassloadingUtility.loadAndInstantiateClass(TransactionSynchronizationRegistry.class, transactionSynchronizationRegistryClassName);
+                    transactionSynchronizationRegistry = instance;
+                }
+            }
+        }
+
+        return transactionSynchronizationRegistry;
+    }
+
+    /**
+     * Sets the instance of javax.transaction.TransactionSynchronizationRegistry
+     *
+     * @param instance an Object that implements javax.transaction.TransactionSynchronizationRegistry, or null.
+     */
+    public void setTransactionSynchronizationRegistry(TransactionSynchronizationRegistry instance)
+    {
+        synchronized(this)
+        {
+            TransactionSynchronizationRegistry oldInstance = this.transactionSynchronizationRegistry;
+            transactionSynchronizationRegistry = instance;
+
+            if(instance == null)
+            {
+                this.transactionSynchronizationRegistryClassName = null;
+            }
+            else if(instance != oldInstance)
+            {
+                String name = ClassloadingUtility.getNameForClass(instance);
+                this.transactionSynchronizationRegistryClassName = name;
+            }
+        }
+    }
+
+    /**
      * Returns the set of node identifiers for which recovery will be performed.
      * The returned list is a copy. May return an empty list, will not return null.
      *

Modified: labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/common/JTAEnvironmentBeanMBean.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/common/JTAEnvironmentBeanMBean.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/common/JTAEnvironmentBeanMBean.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -33,17 +33,17 @@
 
     void setSupportSubtransactions(boolean supportSubtransactions);
 
-    String getJtaTMImplementation();
+    String getTransactionManagerClassName();
 
-    void setJtaTMImplementation(String jtaTMImplementation);
+    void setTransactionManagerClassName(String jtaTMImplementation);
 
-    String getJtaUTImplementation();
+    String getUserTransactionClassName();
 
-    void setJtaUTImplementation(String jtaUTImplementation);
+    void setUserTransactionClassName(String jtaUTImplementation);
 
-    String getJtaTSRImplementation();
+    String getTransactionSynchronizationRegistryClassName();
 
-    void setJtaTSRImplementation(String jtaTSRImplementation);
+    void setTransactionSynchronizationRegistryClassName(String jtaTSRImplementation);
 
     List<String> getXaRecoveryNodes();
 

Modified: labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/utils/JNDIManager.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/utils/JNDIManager.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/utils/JNDIManager.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -94,7 +94,7 @@
 	public static void bindJTATransactionManagerImplementation(InitialContext initialContext) throws javax.naming.NamingException
 	{
         /** Look up and instantiate an instance of the configured transaction manager implementation **/
-        String tmImplementation = jtaPropertyManager.getJTAEnvironmentBean().getJtaTMImplementation();
+        String tmImplementation = jtaPropertyManager.getJTAEnvironmentBean().getTransactionManagerClassName();
 
         /** Bind the transaction manager to the appropriate JNDI context **/
         Reference ref = new Reference(tmImplementation, tmImplementation, null);
@@ -130,7 +130,7 @@
 	public static void bindJTAUserTransactionImplementation(InitialContext initialContext) throws javax.naming.NamingException
 	{
         /** Look up and instantiate an instance of the configured user transaction implementation **/
-        String utImplementation = jtaPropertyManager.getJTAEnvironmentBean().getJtaUTImplementation();
+        String utImplementation = jtaPropertyManager.getJTAEnvironmentBean().getUserTransactionClassName();
 
         /** Bind the user transaction to the appropriate JNDI context **/
         Reference ref = new Reference(utImplementation, utImplementation, null);
@@ -167,7 +167,7 @@
 	public static void bindJTATransactionSynchronizationRegistryImplementation(InitialContext initialContext) throws javax.naming.NamingException
 	{
         /** Look up and instantiate an instance of the configured TransactionSynchronizationRegistry implementation **/
-        String tsrImplementation = jtaPropertyManager.getJTAEnvironmentBean().getJtaTSRImplementation();
+        String tsrImplementation = jtaPropertyManager.getJTAEnvironmentBean().getTransactionSynchronizationRegistryClassName();
         Object tsr = null;
         try {
             tsr = Class.forName(tsrImplementation).newInstance();

Added: labs/jbosstm/trunk/ArjunaJTA/jta/tests/classes/com/hp/mwtests/ts/jta/basic/EnvironmentBeanTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/tests/classes/com/hp/mwtests/ts/jta/basic/EnvironmentBeanTest.java	                        (rev 0)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/tests/classes/com/hp/mwtests/ts/jta/basic/EnvironmentBeanTest.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -0,0 +1,37 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat, Inc. and/or its affiliates,
+ * and individual contributors as indicated by the @author tags.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2010,
+ * @author JBoss, by Red Hat.
+ */
+package com.hp.mwtests.ts.jta.basic;
+
+import com.arjuna.ats.jta.common.JTAEnvironmentBean;
+import org.junit.Test;
+
+/**
+ * Unit tests for EnvironmentBean classes.
+ *
+ * @author Jonathan Halliday (jonathan.halliday at redhat.com)
+ */
+public class EnvironmentBeanTest
+{
+    @Test
+    public void testJTAEnvironmentBean() throws Exception {
+        com.arjuna.common.tests.simple.EnvironmentBeanTest.testBeanByReflection(new JTAEnvironmentBean());
+    }
+}

Modified: labs/jbosstm/trunk/ArjunaJTA/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/ToolInitializer.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/ToolInitializer.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTA/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/ToolInitializer.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -27,7 +27,7 @@
 
     public void initialize(ToolPlugin plugin)
     {
-        String tmClassName = jtaPropertyManager.getJTAEnvironmentBean().getJtaTMImplementation();
+        String tmClassName = jtaPropertyManager.getJTAEnvironmentBean().getTransactionManagerClassName();
         isJTS = (JTS_TM_CLASSNAME_STANDALONE.equals(tmClassName)
                 || JTS_TM_CLASSNAME_ATS.equals(tmClassName));
 

Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/arjuna/ats/jtax/tests/implicit/client/ImplicitClient.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/arjuna/ats/jtax/tests/implicit/client/ImplicitClient.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/arjuna/ats/jtax/tests/implicit/client/ImplicitClient.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -37,15 +37,14 @@
 import com.arjuna.ats.jta.*;
 
 import org.junit.Test;
-import static org.junit.Assert.*;
 
 public class ImplicitClient
 {
     @Test
     public void test() throws Exception
     {
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaTMImplementation(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaUTImplementation(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setTransactionManagerClassName(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
 
         ORB orb = ORB.getInstance("implicitserver-orb");
         OA oa = OA.getRootOA(orb);

Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/arjuna/ats/jtax/tests/implicit/server/ImplicitServer.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/arjuna/ats/jtax/tests/implicit/server/ImplicitServer.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/arjuna/ats/jtax/tests/implicit/server/ImplicitServer.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -37,15 +37,14 @@
 import com.arjuna.ats.jta.common.jtaPropertyManager;
 
 import org.junit.Test;
-import static org.junit.Assert.*;
 
 public class ImplicitServer
 {
     @Test
     public void test() throws Exception
     {
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaTMImplementation(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaUTImplementation(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setTransactionManagerClassName(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
 
         ORB orb = ORB.getInstance("implicitserver-orb");
         OA oa = OA.getRootOA(orb);

Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTAAbort.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTAAbort.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTAAbort.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -38,10 +38,7 @@
 
 import com.arjuna.orbportability.*;
 
-import javax.transaction.*;
-
 import org.junit.Test;
-import static org.junit.Assert.*;
 
 public class JTAAbort
 {
@@ -60,8 +57,8 @@
         ORBManager.setORB(myORB);
         ORBManager.setPOA(myOA);
 
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaTMImplementation(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaUTImplementation(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setTransactionManagerClassName(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
 
         javax.transaction.TransactionManager tm = com.arjuna.ats.jta.TransactionManager.transactionManager();
 

Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTAOrder.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTAOrder.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTAOrder.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -42,7 +42,6 @@
 import javax.transaction.xa.*;
 
 import org.junit.Test;
-import static org.junit.Assert.*;
 
 public class JTAOrder
 {
@@ -63,8 +62,8 @@
 
         boolean passed = false;
 
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaTMImplementation(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaUTImplementation(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setTransactionManagerClassName(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
 
         try
         {

Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTATest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTATest.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTATest.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -65,8 +65,8 @@
 	String connectionString = null;
 	boolean tmCommit = true;
 
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaTMImplementation(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaUTImplementation(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setTransactionManagerClassName(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
 
 	/*
 	 * We should have a reference to a factory object (see JTA

Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTATransactionCommitTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTATransactionCommitTest.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/JTATransactionCommitTest.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -46,8 +46,8 @@
     public void test() throws Exception
     {
         /** Ensure underlying JTA implementation is JTS **/
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaTMImplementation(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaUTImplementation(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setTransactionManagerClassName(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
 
         try
         {

Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/NullResource.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/NullResource.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/NullResource.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -57,8 +57,8 @@
         ORBManager.setORB(myORB);
         ORBManager.setPOA(myOA);
 
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaTMImplementation(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaUTImplementation(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setTransactionManagerClassName(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
 
         boolean passed = false;
 

Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/Performance.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/Performance.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/Performance.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -38,7 +38,6 @@
 import com.arjuna.orbportability.*;
 
 import org.junit.Test;
-import static org.junit.Assert.*;
 
 public class Performance
 {
@@ -57,8 +56,8 @@
         ORBManager.setORB(myORB);
         ORBManager.setPOA(myOA);
 
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaTMImplementation(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaUTImplementation(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setTransactionManagerClassName(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
 
         /*
        * We should have a reference to a factory object (see JTA

Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/SuspendResume.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/SuspendResume.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/SuspendResume.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -57,8 +57,8 @@
         ORBManager.setORB(myORB);
         ORBManager.setPOA(myOA);
 
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaTMImplementation(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaUTImplementation(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setTransactionManagerClassName(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
         
         try
         {

Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/ThreadedCommit.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/ThreadedCommit.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/basic/ThreadedCommit.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -31,7 +31,6 @@
 
 package com.hp.mwtests.ts.jta.jts.basic;
 
-import javax.transaction.Status;
 import javax.transaction.Transaction;
 import javax.transaction.TransactionManager;
 
@@ -107,8 +106,8 @@
         ORBManager.setORB(myORB);
         ORBManager.setPOA(myOA);
 
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaTMImplementation(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaUTImplementation(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setTransactionManagerClassName(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
 
         javax.transaction.TransactionManager tm = com.arjuna.ats.jta.TransactionManager
                 .transactionManager();

Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/hammer/JTAHammer.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/hammer/JTAHammer.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/hammer/JTAHammer.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -44,7 +44,6 @@
 import java.util.*;
 
 import org.junit.Test;
-import static org.junit.Assert.*;
 
 class Worker extends Thread
 {
@@ -147,8 +146,8 @@
 	int threads = 10;
 	int work = 100;
 
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaTMImplementation(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaUTImplementation(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setTransactionManagerClassName(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
 
 	/*
 	 * We should have a reference to a factory object (see JTA

Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/nested/SimpleNestedTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/nested/SimpleNestedTest.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/nested/SimpleNestedTest.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -31,8 +31,6 @@
 
 package com.hp.mwtests.ts.jta.jts.nested;
 
-import com.hp.mwtests.ts.jta.jts.common.TestResource;
-
 import com.arjuna.ats.internal.jts.ORBManager;
 
 import com.arjuna.ats.jta.common.*;
@@ -40,8 +38,6 @@
 import com.arjuna.orbportability.*;
 
 import javax.transaction.NotSupportedException;
-import javax.transaction.Transaction;
-import javax.transaction.xa.XAResource;
 
 import org.junit.Test;
 import static org.junit.Assert.*;
@@ -63,8 +59,8 @@
         ORBManager.setORB(myORB);
         ORBManager.setPOA(myOA);
 
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaTMImplementation(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaUTImplementation(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setTransactionManagerClassName(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
         jtaPropertyManager.getJTAEnvironmentBean().setSupportSubtransactions(true);
 
         javax.transaction.TransactionManager transactionManager = com.arjuna.ats.jta.TransactionManager.transactionManager();
@@ -97,8 +93,8 @@
         ORBManager.setORB(myORB);
         ORBManager.setPOA(myOA);
 
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaTMImplementation(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaUTImplementation(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setTransactionManagerClassName(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
         jtaPropertyManager.getJTAEnvironmentBean().setSupportSubtransactions(false);
 
         javax.transaction.TransactionManager transactionManager = com.arjuna.ats.jta.TransactionManager.transactionManager();

Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/twophase/SimpleTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/twophase/SimpleTest.java	2010-04-07 09:07:58 UTC (rev 32455)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/tests/classes/com/hp/mwtests/ts/jta/jts/twophase/SimpleTest.java	2010-04-07 09:49:50 UTC (rev 32456)
@@ -43,7 +43,6 @@
 import javax.transaction.xa.XAResource;
 
 import org.junit.Test;
-import static org.junit.Assert.*;
 
 public class SimpleTest
 {
@@ -62,8 +61,8 @@
         ORBManager.setORB(myORB);
         ORBManager.setPOA(myOA);
 
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaTMImplementation(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
-        jtaPropertyManager.getJTAEnvironmentBean().setJtaUTImplementation(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setTransactionManagerClassName(com.arjuna.ats.internal.jta.transaction.jts.TransactionManagerImple.class.getName());
+        jtaPropertyManager.getJTAEnvironmentBean().setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
 
         javax.transaction.TransactionManager transactionManager = com.arjuna.ats.jta.TransactionManager.transactionManager();
 



More information about the jboss-svn-commits mailing list