I’ve been trying for 3 hours and realized that openfire doesn’t work well with apacheDS. You can login and do things just fine except that you won’t be able to see list of users and groups due to

2014.08.17 21:52:23 org.jivesoftware.openfire.ldap.LdapManager – Request: 2 cancelled
javax.naming.CommunicationException: Request: 2 cancelled; remaining name ”
        at com.sun.jndi.ldap.LdapRequest.getReplyBer(LdapRequest.java:105)
        at com.sun.jndi.ldap.Connection.readReply(Connection.java:449)
        at com.sun.jndi.ldap.LdapClient.getSearchReply(LdapClient.java:639)
        at com.sun.jndi.ldap.LdapClient.search(LdapClient.java:562)
        at com.sun.jndi.ldap.LdapCtx.doSearch(LdapCtx.java:1985)
        at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1847)
        at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1772)
        at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:386)
        at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:356)
        at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:339)
        at javax.naming.directory.InitialDirContext.search(InitialDirContext.java:267)
        at org.jivesoftware.openfire.ldap.LdapManager.retrieveList(LdapManager.java:1902)
        at org.jivesoftware.openfire.ldap.LdapGroupProvider.getGroupNames(LdapGroupProvider.java:127)
        at org.jivesoftware.openfire.group.GroupManager.getGroups(GroupManager.java:538)