Here is my configuration file (I am using AD Win2003 for LDAP, and Openfire is running on FreeBSD 5.5 Stable):
<?xml version=“1.0” encoding=“UTF-8”?>
<!-- root element, all properties must be under this element -->
<jive>
<adminConsole>
<!-- Disable either port by setting the value to -1 -->
<port>9090</port>
<securePort>9091</securePort>
</adminConsole>
<admin>
<authorizedUsernames>admin,avidan,manu,jbonds,khanh</authorizedUsernam es>
</admin>
<locale>en</locale>
<ldap>
<host>dc1.cimgroup.com</host>
<port>389</port>
<usernameField>sAMAccountName</usernameField>
<nameField>displayName</nameField>
<emailField>mail</emailField>
<groupNameField>cn</groupNameField>
<groupMemberField>member</groupMemberField>
<groupSearchFilter>(objectClass=group)</groupSearchFilter>
<groupDescriptionField>description</groupDescriptionField>
<baseDN>OU=Departments,DC=cimgroup,DC=com</baseDN>
<adminDN>CN=otrs,OU=Technology,OU=Operations,OU=Departments,DC=cimgroup,D C=com</adminDN>
<adminPassword>removed</adminPassword>
<searchField>displayName</searchField>
<vcard-mapping> <![CDATA[
<vCard xmlns=‘vcard-temp’>
<FN attrs=“displayName”></FN>
<NICKNAME attrs=“sAMAccountName”></NICKNAME>
<N>
<FAMILY attrs=“sn”></FAMILY>
<GIVEN attrs=“givenName”></GIVEN>
</N>
<ADR>
<WORK/>
<EXTADR></EXTADR>
<STREET attrs=“streetAddress”></STREET>
<LOCALITY attrs=“l”></LOCALITY>
<REGION attrs=“st”></REGION>
<PCODE attrs=“postalCode”></PCODE>
<CTRY attrs=“co”></CTRY>
</ADR>
<TEL>
<WORK/>
<VOICE/>
<NUMBER attrs=“telephoneNumber”></NUMBER>
<CELL/>
<NUMBER attrs=“mobile”></NUMBER> </TEL>
<EMAIL>
<INTERNET/>
<USERID attrs=“sAMAccountName”></USERID>
</EMAIL>
<TITLE attrs=“title”></TITLE>
<ROLE attrs=""></ROLE>
<ORG>
<ORGNAME attrs=“company”></ORGNAME>
<ORGUNIT attrs=“department”></ORGUNIT>
</ORG>
<URL attrs=“labeledURI”></URL>
<DESC attrs=“uidNumber,homeDirectory,loginShell”>
uid: home: shell:
</DESC>
</vCard>
]]> </vcard-mapping>
</ldap>
<provider>
<user>
<className>org.jivesoftware.openfire.ldap.LdapUserProvider</className& gt;
</user>
<auth>
<className>org.jivesoftware.openfire.ldap.LdapAuthProvider</className& gt;
</auth>
<group>
<className>org.jivesoftware.openfire.ldap.LdapGroupProvider</className >
</group>
<vcard>
<className>org.jivesoftware.openfire.ldap.LdapVCardProvider</className >
</vcard>
</provider>
<!-- End example LDAP settings -->
<connectionProvider>
<className>org.jivesoftware.database.DefaultConnectionProvider</classN ame>
</connectionProvider>
<database>
<defaultProvider>
<driver>com.mysql.jdbc.Driver</driver>
<serverURL>jdbc:mysql://localhost:3306/openfire</serverURL>
<username>otrs</username>
<password>removed</password>
<minConnections>5</minConnections>
<maxConnections>15</maxConnections>
<connectionTimeout>1.0</connectionTimeout>
</defaultProvider>
</database>
<setup>true</setup>
</jive>
Here is the end of the error.log file:
2007.08.10 10:53:29 org.jivesoftware.openfire.handler.IQRosterHandler.handleIQ(IQRosterHandler.java: 128) Internal server error
org.jivesoftware.openfire.user.UserAlreadyExistsException: jide@cimgroup.com
at org.jivesoftware.openfire.roster.RosterItemProvider.createItem(RosterItemProvid er.java:108)
at org.jivesoftware.openfire.roster.Roster.provideRosterItem(Roster.java:334)
at org.jivesoftware.openfire.roster.Roster.provideRosterItem(Roster.java:295)
at org.jivesoftware.openfire.roster.Roster.createRosterItem(Roster.java:280)
at org.jivesoftware.openfire.handler.IQRosterHandler.manageRoster(IQRosterHandler. java:226)
at org.jivesoftware.openfire.handler.IQRosterHandler.handleIQ(IQRosterHandler.java :105)
at org.jivesoftware.openfire.handler.IQHandler.process(IQHandler.java:48)
at org.jivesoftware.openfire.IQRouter.handle(IQRouter.java:300)
at org.jivesoftware.openfire.IQRouter.route(IQRouter.java:104)
at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:67)
at org.jivesoftware.openfire.net.StanzaHandler.processIQ(StanzaHandler.java:289)
at org.jivesoftware.openfire.net.ClientStanzaHandler.processIQ(ClientStanzaHandler .java:79)
at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:254)
at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:153)
at org.jivesoftware.openfire.nio.ConnectionHandler.messageReceived(ConnectionHandl er.java:132)
at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived (AbstractIoFilterChain.java:703)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:362)
at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:54)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:800)
at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimplePr otocolDecoderOutput.java:62)
at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecF ilter.java:200)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:362)
at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:54)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:800)
at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java :266)
at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(Execut orFilter.java:326)
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:595)
2007.08.10 12:27:50 org.jivesoftware.openfire.ldap.LdapVCardProvider.getLdapAttributes(LdapVCardProv ider.java:158)
org.jivesoftware.openfire.user.UserNotFoundException: Username jmitchell not found
at org.jivesoftware.openfire.ldap.LdapManager.findUserDN(LdapManager.java:626)
at org.jivesoftware.openfire.ldap.LdapManager.findUserDN(LdapManager.java:554)
at org.jivesoftware.openfire.ldap.LdapVCardProvider.getLdapAttributes(LdapVCardPro vider.java:137)
at org.jivesoftware.openfire.ldap.LdapVCardProvider.loadVCard(LdapVCardProvider.ja va:176)
at org.jivesoftware.openfire.vcard.VCardManager.getOrLoadVCard(VCardManager.java:1 98)
at org.jivesoftware.openfire.vcard.VCardManager.getVCard(VCardManager.java:191)
at org.jivesoftware.openfire.handler.IQvCardHandler.handleIQ(IQvCardHandler.java:1 07)
at org.jivesoftware.openfire.handler.IQHandler.process(IQHandler.java:48)
at org.jivesoftware.openfire.IQRouter.handle(IQRouter.java:300)
at org.jivesoftware.openfire.IQRouter.route(IQRouter.java:104)
at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:67)
at org.jivesoftware.openfire.net.StanzaHandler.processIQ(StanzaHandler.java:289)
at org.jivesoftware.openfire.net.ClientStanzaHandler.processIQ(ClientStanzaHandler .java:79)
at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:254)
at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:153)
at org.jivesoftware.openfire.nio.ConnectionHandler.messageReceived(ConnectionHandl er.java:132)
at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived (AbstractIoFilterChain.java:703)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:362)
at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:54)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:800)
at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimplePr otocolDecoderOutput.java:62)
at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecF ilter.java:200)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:362)
at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:54)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:800)
at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java :266)
at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(Execut orFilter.java:326)
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:595)
2007.08.10 12:27:50 org.jivesoftware.openfire.handler.IQHandler.process(IQHandler.java:68) Internal server error
java.lang.NullPointerException: replacement
at java.util.regex.Matcher.replaceFirst(Matcher.java:844)
at java.lang.String.replaceFirst(String.java:1967)
at org.jivesoftware.openfire.ldap.LdapVCardProvider$VCard.treeWalk(LdapVCardProvid er.java:301)
at org.jivesoftware.openfire.ldap.LdapVCardProvider$VCard.getVCard(LdapVCardProvid er.java:282)
at org.jivesoftware.openfire.ldap.LdapVCardProvider.loadVCard(LdapVCardProvider.ja va:178)
at org.jivesoftware.openfire.vcard.VCardManager.getOrLoadVCard(VCardManager.java:1 98)
at org.jivesoftware.openfire.vcard.VCardManager.getVCard(VCardManager.java:191)
at org.jivesoftware.openfire.handler.IQvCardHandler.handleIQ(IQvCardHandler.java:1 07)
at org.jivesoftware.openfire.handler.IQHandler.process(IQHandler.java:48)
at org.jivesoftware.openfire.IQRouter.handle(IQRouter.java:300)
at org.jivesoftware.openfire.IQRouter.route(IQRouter.java:104)
at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:67)
at org.jivesoftware.openfire.net.StanzaHandler.processIQ(StanzaHandler.java:289)
at org.jivesoftware.openfire.net.ClientStanzaHandler.processIQ(ClientStanzaHandler .java:79)
at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:254)
at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:153)
at org.jivesoftware.openfire.nio.ConnectionHandler.messageReceived(ConnectionHandl er.java:132)
at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived (AbstractIoFilterChain.java:703)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:362)
at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:54)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:800)
at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimplePr otocolDecoderOutput.java:62)
at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecF ilter.java:200)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:362)
at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:54)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:800)
at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java :266)
at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(Execut orFilter.java:326)
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:595)