Repository: tomee
Updated Branches:
  refs/heads/master f0d07432d -> 17c277f54


removing some ORB references - not yet in client


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/17c277f5
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/17c277f5
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/17c277f5

Branch: refs/heads/master
Commit: 17c277f54885ecfaacdd1d2cebc01679c87ad6a1
Parents: f0d0743
Author: rmannibucau <[email protected]>
Authored: Sat Mar 18 19:03:37 2017 +0100
Committer: rmannibucau <[email protected]>
Committed: Sat Mar 18 19:03:37 2017 +0100

----------------------------------------------------------------------
 .../openejb/server/ejbd/JndiRequestHandler.java     | 16 +++++++++++++---
 .../apache/tomee/catalina/TomcatJndiBuilder.java    | 11 +++++++----
 .../apache/tomee/catalina/TomcatWebAppBuilder.java  | 10 +++++++---
 3 files changed, 27 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/17c277f5/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/JndiRequestHandler.java
----------------------------------------------------------------------
diff --git 
a/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/JndiRequestHandler.java
 
b/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/JndiRequestHandler.java
index 01d6297..bfb7ccf 100644
--- 
a/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/JndiRequestHandler.java
+++ 
b/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/JndiRequestHandler.java
@@ -51,7 +51,6 @@ import org.apache.openejb.spi.ContainerSystem;
 import org.apache.openejb.util.LogCategory;
 import org.apache.openejb.util.Logger;
 import org.apache.openejb.util.proxy.ProxyManager;
-import org.omg.CORBA.ORB;
 
 import javax.jms.ConnectionFactory;
 import javax.jms.Topic;
@@ -82,6 +81,17 @@ import java.util.Set;
 import static org.apache.openejb.server.ejbd.ClientObjectFactory.convert;
 
 class JndiRequestHandler extends RequestHandler {
+    private static final Class<?> ORB_CLASS;
+
+    static {
+        Class<?> orb;
+        try {
+            orb = 
JndiRequestHandler.class.getClassLoader().loadClass("org.omg.CORBA.ORB");
+        } catch (final ClassNotFoundException e) {
+            orb = null;
+        }
+        ORB_CLASS = orb;
+    }
 
     private static final Logger logger = 
Logger.getInstance(LogCategory.OPENEJB_SERVER_REMOTE.createChild("jndi"), 
"org.apache.openejb.server.util.resources");
 
@@ -291,9 +301,9 @@ class JndiRequestHandler extends RequestHandler {
                 res.setResponseCode(ResponseCodes.JNDI_RESOURCE);
                 res.setResult(ConnectionFactory.class.getName());
                 return;
-            } else if (object instanceof ORB) {
+            } else if (ORB_CLASS != null && ORB_CLASS.isInstance(object)) {
                 res.setResponseCode(ResponseCodes.JNDI_RESOURCE);
-                res.setResult(ORB.class.getName());
+                res.setResult(ORB_CLASS.getName());
                 return;
             } else if (object instanceof ValidatorFactory) {
                 res.setResponseCode(ResponseCodes.JNDI_RESOURCE);

http://git-wip-us.apache.org/repos/asf/tomee/blob/17c277f5/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatJndiBuilder.java
----------------------------------------------------------------------
diff --git 
a/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatJndiBuilder.java
 
b/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatJndiBuilder.java
index b63b22b..30fb11d 100644
--- 
a/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatJndiBuilder.java
+++ 
b/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatJndiBuilder.java
@@ -67,7 +67,6 @@ import org.apache.tomee.common.UserTransactionFactory;
 import org.apache.tomee.common.WsFactory;
 import org.apache.webbeans.config.WebBeansContext;
 import org.apache.webbeans.container.InjectableBeanManager;
-import org.omg.CORBA.ORB;
 
 import javax.ejb.spi.HandleDelegate;
 import javax.naming.Binding;
@@ -268,7 +267,11 @@ public class TomcatJndiBuilder {
             final TransactionSynchronizationRegistry synchronizationRegistry = 
SystemInstance.get().getComponent(TransactionSynchronizationRegistry.class);
             comp.rebind("TransactionSynchronizationRegistry", 
synchronizationRegistry);
 
-            comp.rebind("ORB", new SystemComponentReference(ORB.class));
+            try {
+                comp.rebind("ORB", new 
SystemComponentReference(TomcatJndiBuilder.class.getClassLoader().loadClass("org.omg.CORBA.ORB")));
+            } catch (final NoClassDefFoundError | ClassNotFoundException 
ncdfe) {
+                // no-op
+            }
             comp.rebind("HandleDelegate", new 
SystemComponentReference(HandleDelegate.class));
 
             if (webContext != null && webContext.getWebbeansContext() != null) 
{
@@ -697,9 +700,9 @@ public class TomcatJndiBuilder {
         } else if 
(TransactionSynchronizationRegistry.class.getName().equals(ref.resourceEnvRefType))
 {
             resourceEnv.setProperty(Constants.FACTORY, 
SystemComponentFactory.class.getName());
             resourceEnv.setProperty(NamingUtil.COMPONENT_TYPE, 
TransactionSynchronizationRegistry.class.getName());
-        } else if (ORB.class.getName().equals(ref.resourceEnvRefType)) {
+        } else if ("org.omg.CORBA.ORB".equals(ref.resourceEnvRefType)) {
             resourceEnv.setProperty(Constants.FACTORY, 
SystemComponentFactory.class.getName());
-            resourceEnv.setProperty(NamingUtil.COMPONENT_TYPE, 
ORB.class.getName());
+            resourceEnv.setProperty(NamingUtil.COMPONENT_TYPE, 
ref.resourceEnvRefType);
         } else if 
(HandleDelegate.class.getName().equals(ref.resourceEnvRefType)) {
             resourceEnv.setProperty(Constants.FACTORY, 
SystemComponentFactory.class.getName());
             resourceEnv.setProperty(NamingUtil.COMPONENT_TYPE, 
HandleDelegate.class.getName());

http://git-wip-us.apache.org/repos/asf/tomee/blob/17c277f5/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
----------------------------------------------------------------------
diff --git 
a/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
 
b/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
index e834e83..e630528 100644
--- 
a/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
+++ 
b/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
@@ -135,7 +135,6 @@ import org.apache.tomee.common.UserTransactionFactory;
 import org.apache.tomee.loader.TomcatHelper;
 import org.apache.webbeans.config.WebBeansContext;
 import org.apache.webbeans.spi.ContextsService;
-import org.omg.CORBA.ORB;
 
 import javax.ejb.spi.HandleDelegate;
 import javax.naming.Context;
@@ -1724,8 +1723,13 @@ public class TomcatWebAppBuilder implements 
WebAppBuilder, ContextListener, Pare
                 }
             }
 
-            if (SystemInstance.get().getComponent(ORB.class) != null) {
-                safeBind(comp, "ORB", new SystemComponentReference(ORB.class));
+            try {
+                final Class<?> orb = 
TomcatWebAppBuilder.class.getClassLoader().loadClass("org.omg.CORBA.ORB");
+                if (SystemInstance.get().getComponent(orb) != null) {
+                    safeBind(comp, "ORB", new SystemComponentReference(orb));
+                }
+            } catch (final NoClassDefFoundError | ClassNotFoundException cnfe) 
{
+                // no-op
             }
             if (SystemInstance.get().getComponent(HandleDelegate.class) != 
null) {
                 safeBind(comp, "HandleDelegate", new 
SystemComponentReference(HandleDelegate.class));

Reply via email to