I'm now using ldap-1.0.0 with outlook client, and
select text/sifc in ldap configuration panel. When
issue a sync, server throw a exception as followed:
[Oct 30, 2005 6:14:17 PM][sync4j.framework.engine]
FINEST: newA: []
[Oct 30, 2005 6:14:17 PM][sync4j.framework.engine]
FINEST: updatedA: []
[Oct 30, 2005 6:14:17 PM][sync4j.framework.engine]
FINEST: deletedA: []
[Oct 30, 2005 6:14:17 PM][sync4j.framework.engine]
FINEST: Detecting server changes...
[Oct 30, 2005 6:14:17 PM] INFO: Get NEW sync items ( 1
) since ( 2005-10-30 09:49:38.671 )
[Oct 30, 2005 6:14:17 PM] INFO: Creating Contact for
Liu Wen. Id is ( 2f849b78-ddb3-1029-9371-e81c7fdde653 )
[Oct 30, 2005 6:14:17 PM] INFO: Get UPDATED sync items
( 1 ) since ( 2005-10-30 09:49:38.671 )
[Oct 30, 2005 6:14:17 PM] INFO: Creating Contact for
System Administrator. Id is (
7e000382-dceb-1029-8ae3-8f9ddc505d2c )
[Oct 30, 2005 6:14:17 PM][sync4j.handler] FINER: THROW
java.lang.StringIndexOutOfBoundsException: String index
out of range: 36
at java.lang.String.substring(Unknown Source)
at
sync4j.LDAP.engine.LDAPState.getDeletedItems(LDAPState.java:104)
at
sync4j.LDAP.engine.source.LDAPSyncSource.getDeletedSyncItems(LDAPSyncSource.java:204)
at
sync4j.server.engine.Sync4jStrategy.prepareFastSync(Sync4jStrategy.java:372)
at
sync4j.server.engine.Sync4jEngine.sync(Sync4jEngine.java:422)
at
sync4j.server.session.SyncSessionHandler.processModifications(SyncSessionHandler.java:1342)
at
sync4j.server.session.SyncSessionHandler.processSyncMessage(SyncSessionHandler.java:1178)
at
sync4j.server.session.SyncSessionHandler.processInitSyncMapMessage(SyncSessionHandler.java:744)
at
sync4j.server.session.SyncSessionHandler.processMessage(SyncSessionHandler.java:442)
at
sync4j.server.engine.SyncAdapter.processInputMessage(SyncAdapter.java:429)
at
sync4j.server.engine.SyncAdapter.processXMLMessage(SyncAdapter.java:226)
at
sync4j.transport.http.server.LocalSyncHolder.processXMLMessage(LocalSyncHolder.java:87)
at
sync4j.transport.http.server.Sync4jServlet.doPost(Sync4jServlet.java:281)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Unknown Source)
[Oct 30, 2005 6:14:17 PM][sync4j.handler] FINEST:
moving to state STATE_ERROR
[Oct 30, 2005 6:14:17 PM][sync4j.handler] FINEST:
moving to state STATE_ERROR