Author: jbonofre
Date: Sat Dec 14 18:31:02 2013
New Revision: 1550962

URL: http://svn.apache.org/r1550962
Log:
[KARAF-2511] Recursively create JNDI sub-contexts

Modified:
    
karaf/trunk/jndi/core/src/main/java/org/apache/karaf/jndi/internal/JndiServiceImpl.java
    karaf/trunk/manual/src/main/webapp/users-guide/jndi.conf

Modified: 
karaf/trunk/jndi/core/src/main/java/org/apache/karaf/jndi/internal/JndiServiceImpl.java
URL: 
http://svn.apache.org/viewvc/karaf/trunk/jndi/core/src/main/java/org/apache/karaf/jndi/internal/JndiServiceImpl.java?rev=1550962&r1=1550961&r2=1550962&view=diff
==============================================================================
--- 
karaf/trunk/jndi/core/src/main/java/org/apache/karaf/jndi/internal/JndiServiceImpl.java
 (original)
+++ 
karaf/trunk/jndi/core/src/main/java/org/apache/karaf/jndi/internal/JndiServiceImpl.java
 Sat Dec 14 18:31:02 2013
@@ -162,7 +162,14 @@ public class JndiServiceImpl implements 
         String[] splitted = name.split("/");
         if (splitted.length > 0) {
             for (int i = 0; i < splitted.length; i++) {
-                context.createSubcontext(splitted[i]);
+                try {
+                    Object o = context.lookup(splitted[i]);
+                    if (!(o instanceof Context)) {
+                        throw new NamingException("Name " + splitted[i] + " 
already exists");
+                    }
+                } catch (NameNotFoundException e) {
+                    context.createSubcontext(splitted[i]);
+                }
                 context = (Context) context.lookup(splitted[i]);
             }
         } else {

Modified: karaf/trunk/manual/src/main/webapp/users-guide/jndi.conf
URL: 
http://svn.apache.org/viewvc/karaf/trunk/manual/src/main/webapp/users-guide/jndi.conf?rev=1550962&r1=1550961&r2=1550962&view=diff
==============================================================================
--- karaf/trunk/manual/src/main/webapp/users-guide/jndi.conf (original)
+++ karaf/trunk/manual/src/main/webapp/users-guide/jndi.conf Sat Dec 14 
18:31:02 2013
@@ -84,6 +84,7 @@ service   | org.apache.karaf.jndi.intern
 
 {warning}
 The {{jndi:names}} lists only names (the full qualified name). It means that 
the empty JNDI sub-contexts are not displayed.
+To display all JNDI sub-contexts (empty or not), you can use the 
{{jndi:contexts}} command.
 {warning}
 
 h3. {{jndi:contexts}}


Reply via email to