diff options
Diffstat (limited to 'qpid/java/jca/src/main/java/org/apache/qpid/ra/tm/JBoss7TransactionManagerLocator.java')
-rw-r--r-- | qpid/java/jca/src/main/java/org/apache/qpid/ra/tm/JBoss7TransactionManagerLocator.java | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/qpid/java/jca/src/main/java/org/apache/qpid/ra/tm/JBoss7TransactionManagerLocator.java b/qpid/java/jca/src/main/java/org/apache/qpid/ra/tm/JBoss7TransactionManagerLocator.java new file mode 100644 index 0000000000..266c56bd63 --- /dev/null +++ b/qpid/java/jca/src/main/java/org/apache/qpid/ra/tm/JBoss7TransactionManagerLocator.java @@ -0,0 +1,33 @@ +package org.apache.qpid.ra.tm; + +import javax.naming.InitialContext; +import javax.transaction.TransactionManager; + +public class JBoss7TransactionManagerLocator +{ + private static final String TM_JNDI_NAME = "java:jboss/TransactionManager"; + + public TransactionManager getTm() throws Exception + { + InitialContext ctx = null; + + try + { + ctx = new InitialContext(); + return (TransactionManager)ctx.lookup(TM_JNDI_NAME); + } + finally + { + try + { + if(ctx != null) + { + ctx.close(); + } + } + catch(Exception ignore) + { + } + } + } +} |