This ClassCastException problem went away after Ersin Er's commit
378449, but seems to be back again after I updated today (although no
recent commits seem to touch the problem classes). Now when I run the
vanilla UberJarMain I get the following stacktrace:

org.apache.directory.server.core.interceptor.InterceptorException:
Unexpected exception. [Root exception is java.lang.ClassCastException]
        at 
org.apache.directory.server.core.interceptor.InterceptorChain.throwInterceptorException(InterceptorChain.java:1504)
        at 
org.apache.directory.server.core.interceptor.InterceptorChain.access$700(InterceptorChain.java:49)
        at 
org.apache.directory.server.core.interceptor.InterceptorChain$2.hasEntry(InterceptorChain.java:1328)
        at 
org.apache.directory.server.core.interceptor.BaseInterceptor.hasEntry(BaseInterceptor.java:131)
        at 
org.apache.directory.server.core.interceptor.InterceptorChain$2.hasEntry(InterceptorChain.java:1320)
        at 
org.apache.directory.server.core.authn.AuthenticationService.hasEntry(AuthenticationService.java:252)
        at 
org.apache.directory.server.core.interceptor.InterceptorChain$2.hasEntry(InterceptorChain.java:1320)
        at 
org.apache.directory.server.core.normalization.NormalizationService.hasEntry(NormalizationService.java:187)
        at 
org.apache.directory.server.core.interceptor.InterceptorChain.hasEntry(InterceptorChain.java:885)
        at 
org.apache.directory.server.core.partition.DirectoryPartitionNexusProxy.hasEntry(DirectoryPartitionNexusProxy.java:535)
        at 
org.apache.directory.server.core.partition.DirectoryPartitionNexusProxy.hasEntry(DirectoryPartitionNexusProxy.java:523)
        at 
org.apache.directory.server.core.jndi.ServerContext.<init>(ServerContext.java:127)
        at 
org.apache.directory.server.core.jndi.ServerDirContext.<init>(ServerDirContext.java:76)
        at 
org.apache.directory.server.core.jndi.ServerLdapContext.<init>(ServerLdapContext.java:61)
        at 
org.apache.directory.server.core.DefaultDirectoryService.getJndiContext(DefaultDirectoryService.java:167)
        at 
org.apache.directory.server.core.jndi.AbstractContextFactory.getInitialContext(AbstractContextFactory.java:121)
        at 
javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:662)
        at 
javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243)
        at javax.naming.InitialContext.init(InitialContext.java:219)
        at javax.naming.InitialContext.<init>(InitialContext.java:195)
        at 
javax.naming.directory.InitialDirContext.<init>(InitialDirContext.java:80)
        at org.apache.directory.server.Service.init(Service.java:93)
        at org.apache.directory.server.UberjarMain.main(UberjarMain.java:54)
Caused by: java.lang.ClassCastException
        at 
org.apache.directory.shared.ldap.name.LdapDN.normalize(LdapDN.java:1222)
        at 
org.apache.directory.server.core.partition.DirectoryPartitionNexusProxy.lookup(DirectoryPartitionNexusProxy.java:487)
        at 
org.apache.directory.server.core.authz.AuthorizationService.hasEntry(AuthorizationService.java:571)
        at 
org.apache.directory.server.core.interceptor.InterceptorChain$2.hasEntry(InterceptorChain.java:1320)
        ... 20 more

and again it seems like ServerContext.java:127 is ultimately
responsible to passing in an LdapName dn which is eventually coerced
to an LdapDN by the NormalizationService.

I'm running JDK1.4 now and have a vague feeling I may have been
running JDK1.5 while everything was working, so it's possible the
problem relates to the choice of JDK. I'll try a clean build, and then
investigate the JDK possibility if the problem persists.

Reply via email to