You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2012/09/28 14:27:46 UTC

svn commit: r1391425 - /openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/OpenEJBContext.java

Author: rmannibucau
Date: Fri Sep 28 12:27:46 2012
New Revision: 1391425

URL: http://svn.apache.org/viewvc?rev=1391425&view=rev
Log:
avoid to bring back tomee webapp jndi tree when deploying an app

Modified:
    openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/OpenEJBContext.java

Modified: openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/OpenEJBContext.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/OpenEJBContext.java?rev=1391425&r1=1391424&r2=1391425&view=diff
==============================================================================
--- openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/OpenEJBContext.java (original)
+++ openejb/trunk/openejb/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/OpenEJBContext.java Fri Sep 28 12:27:46 2012
@@ -17,6 +17,8 @@
  */
 package org.apache.tomee.catalina;
 
+import org.apache.naming.ContextBindings;
+import org.apache.openejb.assembler.DeployerEjb;
 import org.apache.openejb.core.ThreadContext;
 
 import javax.naming.Binding;
@@ -254,9 +256,19 @@ public class OpenEJBContext implements C
      */
     private Context getThreadContext() throws NamingException {
         ThreadContext threadContext = ThreadContext.getThreadContext();
+        if (skipEjbContext(threadContext)) {
+            return ContextBindings.getClassLoader();
+        }
         Context context = threadContext.getBeanContext().getJndiEnc();
         return context;
     }
 
+    private boolean skipEjbContext(final ThreadContext threadContext) {
+        // we use it to deploy so if any lookup is done during the deployment
+        // we don't want to get the DeployerEjb JNDI tree
+        // since this method is pretty quick that's not an issue to do the test
+        return DeployerEjb.class.equals(threadContext.getBeanContext().getBeanClass());
+    }
+
 }