Author: dblevins
Date: Wed Jul  8 00:03:37 2009
New Revision: 792002

URL: http://svn.apache.org/viewvc?rev=792002&view=rev
Log:
delegate to the root context if the name starts with openejb/Deployment/

Modified:
    
openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/JndiRequestHandler.java

Modified: 
openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/JndiRequestHandler.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/JndiRequestHandler.java?rev=792002&r1=792001&r2=792002&view=diff
==============================================================================
--- 
openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/JndiRequestHandler.java
 (original)
+++ 
openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/JndiRequestHandler.java
 Wed Jul  8 00:03:37 2009
@@ -72,15 +72,17 @@
 class JndiRequestHandler {
     private static final Logger logger = 
Logger.getInstance(LogCategory.OPENEJB_SERVER_REMOTE.createChild("jndi"), 
"org.apache.openejb.server.util.resources");
 
-    private Context ejbJndiTree;
+    private final Context ejbJndiTree;
     private Context clientJndiTree;
-    private Context deploymentsJndiTree;
+    private final Context deploymentsJndiTree;
     private final ClusterableRequestHandler clusterableRequestHandler;
+    private Context rootContext;
 
     JndiRequestHandler(EjbDaemon daemon) throws Exception {
         ContainerSystem containerSystem = 
SystemInstance.get().getComponent(ContainerSystem.class);
         ejbJndiTree = (Context) 
containerSystem.getJNDIContext().lookup("openejb/remote");
         deploymentsJndiTree = (Context) 
containerSystem.getJNDIContext().lookup("openejb/Deployment");
+        rootContext = containerSystem.getJNDIContext();
         try {
             clientJndiTree = (Context) 
containerSystem.getJNDIContext().lookup("openejb/client");
         } catch (NamingException e) {
@@ -151,7 +153,11 @@
 
     private Context getContext(JNDIRequest req) throws NamingException {
         Context context;
-        if (req.getModuleId() != null && 
req.getModuleId().equals("openejb/Deployment")){
+        String name = req.getRequestString();
+
+        if (name.startsWith("openejb/Deployment/")) {
+            context = rootContext;
+        } else if (req.getModuleId() != null && 
req.getModuleId().equals("openejb/Deployment")){
             context = deploymentsJndiTree;
         } else if (req.getModuleId() != null && clientJndiTree != null) {
             context = (Context) clientJndiTree.lookup(req.getModuleId());


Reply via email to