I'd vote for going with 1a) over 1b) and 1c) is not an option in my
mind. If someone ever does 1b) then great, but lets not hold up the
samples over it.
BTW - Should we start a Genesis 1.5 vote, since Samples is currently
using and needs the 1.5-SNAPSHOT level?
-Donald
Joe Bohn wrote:
Two issues here that I hit while attempting to validate the LDAP sample
and get it ready for release.
1) The directory plugin won't install on Geronimo 2.1.2. At the moment,
one of the easiest ways to leverage the sample if you don't already have
an external directory server is via the directory plugin. However, this
plugin was last released for Geronimo 2.1. It fails to install on 2.1.1
or 2.1.2 due to dependencies on 2.1 artifacts. 2.1.2 was our latest
target release for samples. With the inclusion of the alias entries it
deploys fine in Geronimo 2.1.3. So I think we have the following options:
a) Require an external directory server for the sample rather than using
the directory plugin if installing on a Geronimo 2.1.2 server
b) Release a new version of the directory plugin with dependencies on
Geronimo 2.1.2 which would install in both 2.1.2 & 2.1.3
c) Push our samples support out from 2.1.2 to 2.1.3
d) other choices (such as creating a compatibility plugin for this on
2.1.2 and using that for a 2.1.2 install) or any other ideas?
I personally hate c). We keep pushing samples to later releases ... but
it does make sense that samples are most valuable for new users on the
latest release so I see the logic. d) doesn't seem any better than
creating a new version of the directory plugin for 2.1.2 (and it's more
complicated for the user). a) isn't very user friendly either and
doesn't help users with a need to run directory on Geronimo 2.1.2.
- So all in all, I'm thinking b) makes the most sense given that it has
broader use beyond just the sample. What are your thoughts?
2) While testing the sample I noticed the following error on the
console. I couldn't tie it to any particular activity ... it seemed
that the sample was working as expected. Any ideas?
15:06:18,110 ERROR [UnbindHandler] failed to unbind session properly
org.apache.directory.shared.ldap.exception.LdapNameNotFoundException:
uid=admin,ou=system
at
org.apache.directory.server.core.partition.DefaultPartitionNexus.getPartition(DefaultPartitionNexus.java:1114)
at
org.apache.directory.server.core.partition.DefaultPartitionNexus.unbind(DefaultPartitionNexus.java:773)
at
org.apache.directory.server.core.interceptor.InterceptorChain$1.unbind(InterceptorChain.java:210)
at
org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.unbind(InterceptorChain.java:1412)
at
org.apache.directory.server.core.interceptor.BaseInterceptor.unbind(BaseInterceptor.java:229)
at
org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.unbind(InterceptorChain.java:1412)
at
org.apache.directory.server.core.interceptor.BaseInterceptor.unbind(BaseInterceptor.java:229)
at
org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.unbind(InterceptorChain.java:1412)
at
org.apache.directory.server.core.interceptor.BaseInterceptor.unbind(BaseInterceptor.java:229)
at
org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.unbind(InterceptorChain.java:1412)
at
org.apache.directory.server.core.interceptor.BaseInterceptor.unbind(BaseInterceptor.java:229)
at
org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.unbind(InterceptorChain.java:1412)
at
org.apache.directory.server.core.interceptor.BaseInterceptor.unbind(BaseInterceptor.java:229)
at
org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.unbind(InterceptorChain.java:1412)
at
org.apache.directory.server.core.interceptor.BaseInterceptor.unbind(BaseInterceptor.java:229)
at
org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.unbind(InterceptorChain.java:1412)
at
org.apache.directory.server.core.interceptor.BaseInterceptor.unbind(BaseInterceptor.java:229)
at
org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.unbind(InterceptorChain.java:1412)
at
org.apache.directory.server.core.interceptor.BaseInterceptor.unbind(BaseInterceptor.java:229)
at
org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.unbind(InterceptorChain.java:1412)
at
org.apache.directory.server.core.interceptor.BaseInterceptor.unbind(BaseInterceptor.java:229)
at
org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.unbind(InterceptorChain.java:1412)
at
org.apache.directory.server.core.interceptor.BaseInterceptor.unbind(BaseInterceptor.java:229)
at
org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.unbind(InterceptorChain.java:1412)
at
org.apache.directory.server.core.interceptor.BaseInterceptor.unbind(BaseInterceptor.java:229)
at
org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.unbind(InterceptorChain.java:1412)
at
org.apache.directory.server.core.interceptor.BaseInterceptor.unbind(BaseInterceptor.java:229)
at
org.apache.directory.server.core.interceptor.InterceptorChain.unbind(InterceptorChain.java:794)
at
org.apache.directory.server.core.partition.PartitionNexusProxy.unbind(PartitionNexusProxy.java:684)
at
org.apache.directory.server.core.partition.PartitionNexusProxy.unbind(PartitionNexusProxy.java:701)
at
org.apache.directory.server.core.jndi.ServerLdapContext.ldapUnbind(ServerLdapContext.java:210)
at
org.apache.directory.server.ldap.support.UnbindHandler.messageReceived(UnbindHandler.java:58)
at
org.apache.mina.handler.demux.DemuxingIoHandler.messageReceived(DemuxingIoHandler.java:141)
at
org.apache.directory.server.ldap.LdapProtocolProvider$LdapProtocolHandler.messageReceived(LdapProtocolProvider.java:428)
at
org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:570)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:648)
at
org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
at
org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:176)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:648)
at
org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
at
org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:613)