summaryrefslogtreecommitdiff
path: root/qpid/java/jca/src/main/java/org/apache/qpid/ra/tm/JBoss7TransactionManagerLocator.java
diff options
context:
space:
mode:
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.java33
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)
+ {
+ }
+ }
+ }
+}