I had the “Error parsing LDAP search fields” in my “logs/error.log” file:
2011.07.19 16:13:28 Error parsing LDAP search fields: uid,cn,sn,givenName
java.lang.ArrayIndexOutOfBoundsException: 1
at org.jivesoftware.openfire.ldap.LdapUserProvider.(LdapUserProvider.java:86 )
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessor Impl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructor AccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at org.jivesoftware.openfire.user.UserManager.initProvider(UserManager.java:474)
at org.jivesoftware.openfire.user.UserManager.(UserManager.java:97)
at org.jivesoftware.openfire.user.UserManager.(UserManager.java:55)
at org.jivesoftware.openfire.user.UserManager$UserManagerContainer.(UserMa nager.java:61)
at org.jivesoftware.openfire.user.UserManager.getInstance(UserManager.java:82)
at org.jivesoftware.openfire.XMPPServer.getUserManager(XMPPServer.java:1223)
at org.jivesoftware.openfire.spi.PresenceManagerImpl.initialize(PresenceManagerImp l.java:517)
at org.jivesoftware.openfire.XMPPServer.initModules(XMPPServer.java:597)
at org.jivesoftware.openfire.XMPPServer.start(XMPPServer.java:485)
at org.jivesoftware.openfire.XMPPServer.(XMPPServer.java:212)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessor Impl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructor AccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at org.jivesoftware.openfire.starter.ServerStarter.start(ServerStarter.java:113)
at org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:58)
When my** ldap.searchFields** property was: uid,cn,sn,givenName
In the Openfire Console, the “Searchable Fields” settings of the Search Service was empty (no fields) thus searching an user from Spark client was impossible (never returned any result).
Now that I’ve changed it to: Identifiant/uid,Nom complet/cn,Prénom/sn,Nom de famille/givenName,Courriel/mail
The error vanished and user search is now working.