LDAP (Active Directory) errors in logs - bad group config?

I have Openfire 2.5.2 working fine, but notice some LDAP exceptions in the logs. I’ve tried both :389 as well as Global Catalogue :3268 neither seem to make a difference. The Ldap confiug seems to be configured for Referral lookups, so not sure whats going on. Something in the group configuration perhaps? - strange, as I can use the admin console to list all groups, and lookup and drill into a given group to see members…

If anyone can spot the deliberate mistake, make my day and point it out!

getGroupNames(LdapGroupProvider.java:387)] Error getting groups for user: user@server

javax.naming.CommunicationException: Request: 10 cancelled; remaining name ‘’

at com.sun.jndi.ldap.LdapRequest.getReplyBer(LdapRequest.java:60)

at com.sun.jndi.ldap.Connection.readReply(Connection.java:411)

at com.sun.jndi.ldap.LdapClient.getSearchReply(LdapClient.java:611)

at com.sun.jndi.ldap.LdapClient.search(LdapClient.java:534)

at com.sun.jndi.ldap.LdapCtx.doSearch(LdapCtx.java:1948)

at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1810)

at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1735)

at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java: 368)

at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirC ontext.java:338)

at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirC ontext.java:321)

at javax.naming.directory.InitialDirContext.search(InitialDirContext.java:248)

Other stacks:

2008.07.03 13:52:18 org.jivesoftware.openfire.ldap.LdapGroupProvider.populateGroups(LdapGroupProvide r.java:683)

java.lang.NullPointerException

at org.jivesoftware.openfire.ldap.LdapGroupProvider.populateGroups(LdapGroupProvid er.java:674)

at org.jivesoftware.openfire.ldap.LdapGroupProvider.getGroup(LdapGroupProvider.jav a:100)

at org.jivesoftware.openfire.group.GroupManager.getGroup(GroupManager.java:205)

at org.jivesoftware.openfire.group.GroupCollection$UserIterator.getNextElement(Gro upCollection.java:103)

at org.jivesoftware.openfire.group.GroupCollection$UserIterator.hasNext(GroupColle ction.java:66)

Here’s my config in case there is something not quite right:

<ldap>

<host>server</host>

<port>3268</port>

<baseDN>DC=this,DC=that</baseDN>

<adminDN>user@domain.net</adminDN>

<adminPassword>pass</adminPassword>

<connectionPoolEnabled>true</connectionPoolEnabled>

<sslEnabled>false</sslEnabled>

<ldapDebugEnabled>false</ldapDebugEnabled>

<autoFollowReferrals>true</autoFollowReferrals>

<usernameField>sAMAccountName</usernameField>

<searchFilter>(&(objectclass=user)(objectclass=person)(objectclass=organiz ationalPerson)(sn=)(givenName=)(company=))(sn=)(givenName=)(company=)(displayName=*)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))</searchFil ter>

<vcard-mapping><![CDATA[

<vCard xmlns=“vcard-temp”>

<N>

<GIVEN></GIVEN>

</N>

<EMAIL>

<INTERNET/>

<USERID></USERID>

</EMAIL>

<FN></FN>

<ADR>

<HOME/>

<STREET></STREET>

<PCODE></PCODE>

<CTRY></CTRY>
</ADR>
<ADR>
<WORK/>
<STREET></STREET>
<LOCALITY></LOCALITY>
<REGION></REGION>
<PCODE></PCODE>
<CTRY></CTRY>

</ADR>

<TEL>

<HOME/>

<VOICE/>

<NUMBER>, x</NUMBER>

</TEL>

<TEL>

<HOME/>

<CELL/>

<NUMBER></NUMBER>
</TEL>
<TEL>
<WORK/>
<VOICE/>
<NUMBER></NUMBER>
</TEL>
<TEL>
<WORK/>
<CELL/>
<NUMBER></NUMBER>

</TEL>

<TEL>

<WORK/>

<FAX/>

<NUMBER></NUMBER>

</TEL>

<TEL>

<WORK/>

<PAGER/>

<NUMBER></NUMBER>

</TEL>

<TITLE></TITLE>

<ORG>

<ORGUNIT></ORGUNIT>

</ORG>

</vCard>]]></vcard-mapping>

<nameField>cn</nameField>

<emailField>mail</emailField>

<groupNameField>cn</groupNameField>

<groupMemberField>member</groupMemberField>

<groupDescriptionField>description</groupDescriptionField>

<posixMode>false</posixMode>

<groupSearchFilter>(&(objectclass=group)(!(displayName=@))(!(sAMAccountName=_))))</groupSearchFilter>

</ldap>

You are using filters to limit what can be displayed. Your filters could be causeing your issues. Try resetting your filters back to defaults. See my attachment which also includes some additions to the vCard mappings to make spark have a more complete vCard.