Index: trunk/modules/jndi/src/main/java/javax/naming/InitialContext.java =================================================================== --- trunk/modules/jndi/src/main/java/javax/naming/InitialContext.java (revision 427412) +++ trunk/modules/jndi/src/main/java/javax/naming/InitialContext.java (working copy) @@ -441,9 +441,12 @@ } public Name composeName(Name name, Name prefix) throws NamingException { - if (null == name || null == prefix) { + if (null == name) { throw new InvalidNameException("Invalid name."); //$NON-NLS-1$ } + if (prefix == null) { + prefix = new CompositeName(""); + } Name comName = (Name) prefix.clone(); comName.addAll(name); return comName; @@ -451,9 +454,12 @@ public String composeName(String name, String prefix) throws NamingException { - if (null == name || null == prefix) { + if (null == name) { throw new InvalidNameException("Invalid name."); //$NON-NLS-1$ } + if (prefix == null) { + prefix = ""; + } return composeName(new CompositeName(name), new CompositeName(prefix)) .toString(); } Index: trunk/modules/jndi/src/test/java/org/apache/harmony/jndi/tests/javax/naming/InitialContextMockTest.java =================================================================== --- trunk/modules/jndi/src/test/java/org/apache/harmony/jndi/tests/javax/naming/InitialContextMockTest.java (revision 427412) +++ trunk/modules/jndi/src/test/java/org/apache/harmony/jndi/tests/javax/naming/InitialContextMockTest.java (working copy) @@ -194,8 +194,8 @@ Name name = new CompositeName("namepfxnull"); try { Name comName = gContext.composeName(name, null); - fail("Should throw InvalidNameException."); } catch (InvalidNameException e) { + fail("Should not throw InvalidNameException."); } // assertFalse(InvokeRecord.equals(null, name, null)); } @@ -217,8 +217,8 @@ try { String pfx = null; String comName = gContext.composeName(name, pfx); - fail("Should throw InvalidNameException."); } catch (InvalidNameException e) { + fail("Should not throw InvalidNameException."); } // assertFalse(InvokeRecord.equals(null, name, null)); }