Are you seeing a NullPointerException coming from LdapUserProvider.findUsers() in the error logs?
No, I think :). Here is full traceback from debug.log:
2005.09.08 09:17:27 Creating a DirContext in LdapManager.getContext()…
2005.09.08 09:17:27 Created hashtable with context values, attempting to create context…
2005.09.08 09:17:27 … context created successfully, returning.
2005.09.08 09:17:27 Creating a DirContext in LdapManager.getContext()…
2005.09.08 09:17:27 Created hashtable with context values, attempting to create context…
2005.09.08 09:17:27 … context created successfully, returning.
2005.09.08 09:17:27 Trying to find a user’'s DN based on their username. uid: hev$, Base DN: dc=sbyt,dc=amur,dc=elektra,dc=ru…
2005.09.08 09:17:27 Creating a DirContext in LdapManager.getContext()…
2005.09.08 09:17:27 Created hashtable with context values, attempting to create context…
2005.09.08 09:17:27 … context created successfully, returning.
2005.09.08 09:17:27 Starting LDAP search…
2005.09.08 09:17:27 … search finished
2005.09.08 09:17:27 User DN based on username ‘‘hev$’’ not found.
2005.09.08 09:17:27 Exception thrown when searching for userDN based on username ‘‘hev$’’
org.jivesoftware.messenger.user.UserNotFoundException: Username hev$ not found
at org.jivesoftware.messenger.ldap.LdapManager.findUserDN(LdapManager.java:465)
at org.jivesoftware.messenger.ldap.LdapManager.findUserDN(LdapManager.java:400)
at org.jivesoftware.messenger.ldap.LdapUserProvider.loadUser(LdapUserProvider.java :69)
at org.jivesoftware.messenger.user.UserManager.getUser(UserManager.java:157)
at org.jivesoftware.messenger.user.UserCollection$UserIterator.getNextElement(User Collection.java:94)
at org.jivesoftware.messenger.user.UserCollection$UserIterator.hasNext(UserCollect ion.java:57)
at java.util.AbstractCollection.toArray(Unknown Source)
at java.util.ArrayList.addAll(Unknown Source)
at org.jivesoftware.messenger.plugin.SearchPlugin.processSetPacket(SearchPlugin.ja va:285)
at org.jivesoftware.messenger.plugin.SearchPlugin.handleIQ(SearchPlugin.java:242)
at org.jivesoftware.messenger.plugin.SearchPlugin.processPacket(SearchPlugin.java: 191)
at org.jivesoftware.messenger.component.InternalComponentManager$RoutableComponent .process(InternalComponentManager.java:342)
at org.jivesoftware.messenger.IQRouter.handle(IQRouter.java:151)
at org.jivesoftware.messenger.IQRouter.route(IQRouter.java:73)
at org.jivesoftware.messenger.PacketRouter.route(PacketRouter.java:65)
at org.jivesoftware.messenger.net.SocketReader.processIQ(SocketReader.java:258)
at org.jivesoftware.messenger.net.ClientSocketReader.processIQ(ClientSocketReader. java:43)
at org.jivesoftware.messenger.net.SocketReader.readStream(SocketReader.java:230)
at org.jivesoftware.messenger.net.SocketReader.run(SocketReader.java:111)
at java.lang.Thread.run(Unknown Source)
2005.09.08 09:17:27 Creating a DirContext in LdapManager.getContext()…
2005.09.08 09:17:27 Created hashtable with context values, attempting to create context…
2005.09.08 09:17:27 … context created successfully, returning.
2005.09.08 09:17:27 Trying to find a user’'s DN based on their username. uid: 93141, Base DN: dc=sbyt,dc=amur,dc=elektra,dc=ru…
2005.09.08 09:17:27 Creating a DirContext in LdapManager.getContext()…
2005.09.08 09:17:27 Created hashtable with context values, attempting to create context…
2005.09.08 09:17:27 … context created successfully, returning.
2005.09.08 09:17:27 Starting LDAP search…
2005.09.08 09:17:27 … search finished
2005.09.08 09:17:27 User DN based on username ‘‘93141’’ not found.
2005.09.08 09:17:27 Exception thrown when searching for userDN based on username ‘‘93141’’
org.jivesoftware.messenger.user.UserNotFoundException: Username 93141 not found
at org.jivesoftware.messenger.ldap.LdapManager.findUserDN(LdapManager.java:465)
at org.jivesoftware.messenger.ldap.LdapManager.findUserDN(LdapManager.java:400)
at org.jivesoftware.messenger.ldap.LdapUserProvider.loadUser(LdapUserProvider.java :69)
at org.jivesoftware.messenger.user.UserManager.getUser(UserManager.java:157)
at org.jivesoftware.messenger.user.UserCollection$UserIterator.getNextElement(User Collection.java:94)
at org.jivesoftware.messenger.user.UserCollection$UserIterator.hasNext(UserCollect ion.java:57)
at java.util.AbstractCollection.toArray(Unknown Source)
at java.util.ArrayList.addAll(Unknown Source)
at org.jivesoftware.messenger.plugin.SearchPlugin.processSetPacket(SearchPlugin.ja va:285)
at org.jivesoftware.messenger.plugin.SearchPlugin.handleIQ(SearchPlugin.java:242)
at org.jivesoftware.messenger.plugin.SearchPlugin.processPacket(SearchPlugin.java: 191)
at org.jivesoftware.messenger.component.InternalComponentManager$RoutableComponent .process(InternalComponentManager.java:342)
at org.jivesoftware.messenger.IQRouter.handle(IQRouter.java:151)
at org.jivesoftware.messenger.IQRouter.route(IQRouter.java:73)
at org.jivesoftware.messenger.PacketRouter.route(PacketRouter.java:65)
at org.jivesoftware.messenger.net.SocketReader.processIQ(SocketReader.java:258)
at org.jivesoftware.messenger.net.ClientSocketReader.processIQ(ClientSocketReader. java:43)
at org.jivesoftware.messenger.net.SocketReader.readStream(SocketReader.java:230)
at org.jivesoftware.messenger.net.SocketReader.run(SocketReader.java:111)
at java.lang.Thread.run(Unknown Source)
The searching word was “hev*”.
“Trying to find a user’'s DN based on their username. uid: hev$” - may be this is a problem?
I have two entries in my LDAP directory:
uid=hev,ou=Users,dc=sbyt,dc=amur,dc=elektra,dc=ru
and
uid=hev$,ou=Computers,dc=sbyt,dc=amur,dc=elektra,dc=ru
DistName uid=hev$,ou=Computers,dc=sbyt,dc=amur,dc=elektra,dc=ru has no “shadowAccount” objectclass. Why does Jive Messenger search there?