diff options
Diffstat (limited to 'libjava/javax/naming/spi/NamingManager.java')
-rw-r--r-- | libjava/javax/naming/spi/NamingManager.java | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/libjava/javax/naming/spi/NamingManager.java b/libjava/javax/naming/spi/NamingManager.java index 65ce2d23c23..4051f2288a9 100644 --- a/libjava/javax/naming/spi/NamingManager.java +++ b/libjava/javax/naming/spi/NamingManager.java @@ -38,8 +38,18 @@ exception statement from your version. */ package javax.naming.spi; -import java.util.*; -import javax.naming.*; +import java.util.Enumeration; +import java.util.Hashtable; +import java.util.StringTokenizer; +import javax.naming.CannotProceedException; +import javax.naming.Context; +import javax.naming.Name; +import javax.naming.NamingException; +import javax.naming.NoInitialContextException; +import javax.naming.RefAddr; +import javax.naming.Reference; +import javax.naming.Referenceable; +import javax.naming.StringRefAddr; public class NamingManager { @@ -324,8 +334,10 @@ public class NamingManager // It is really unclear to me if this is right. try { - Object obj = getObjectInstance (null, cpe.getAltName (), - cpe.getAltNameCtx (), env); + Object obj = getObjectInstance (cpe.getResolvedObj(), + cpe.getAltName (), + cpe.getAltNameCtx (), + env); if (obj != null) return (Context) obj; } @@ -333,6 +345,9 @@ public class NamingManager { } + // fix stack trace for re-thrown exception (message confusing otherwise) + cpe.fillInStackTrace(); + throw cpe; } |