OK, short introduction: My brother and I have been using Zimbra (open source edition) as our mail server for a couple years now. Currently, we're partnering with some other folks, and looking to expand our collaboration capabilities, and one of the goals is to have shared calendars for everyone.
To this end, I decided to go ahead and migrate the folks we're partnering with over to our mail server, so we could all be able to easily see each others' calendars. Managing these remotely was easy for me, since I use Thunderbird and Lightning. However, the other folks are using Outlook for their calendaring stuff, and Outlook only seems to support grabbing events from the Zimbra calendar, but not allowing the user to add events in Outlook and then have them sent to Zimbra.
A little bit of research seemed to indicate that while Outlook was capable of publishing calendar events via WebDAV, this was not supported by the Zimbra open source edition. Since we'd been looking at Funambol for a while anyway for the mobile syncing stuff, I decided to roll with that and see if I could use it as an intermediary between Outlook and Zimbra.
Long story short, Funambol is now functional with my mobile device, and
mostly functional with Outlook. However, like the previous situation, Funambol seems to only be able to pull events from Zimbra and send them to Outlook. Trying to publish events from Outlook to Zimbra gets me a message informing me that items failed to update on the server. Contacts will sync both ways with no problems; this only happens with calendar stuff.
If anyone has any ideas here, I'd appreciate any input. I know that I have alternatives, such as getting folks to either switch local clients or else use the Zimbra web interface, but I'd prefer to get this working, partially because I've put a fair amount of time into it, and I'd rather not come back and allow as to how I've essentially achieved nothing save for failure in that time.
Thanks!
Error logs follow:
From the Outlook plugin logs:
Code:
2008-08-16 14:58:28 GMT -5:00 - # Funambol Outlook Plug-in v. 7.0.7 - LOG file
14:58:28 GMT -5:00 [INFO] -
************************** BEGIN of Synchronization session **************************
14:58:28 GMT -5:00 [DEBUG] - Synchronization URL: http://funambol.intuiworx.net:8080/funambol/ds
14:58:28 GMT -5:00 [INFO] - Preparing synchronization of contact...
14:58:28 GMT -5:00 [INFO] - Preparing synchronization of appointment...
14:58:28 GMT -5:00 [INFO] - Outlook session opened successfully! Using: Outlook XP (2002).
14:58:29 GMT -5:00 [INFO] - Total contact items to send: 0
14:58:29 GMT -5:00 [INFO] - Total appointment items to send: 1
14:58:29 GMT -5:00 [INFO] - Retrieved updated appointment item: "Rick's is closing"
14:58:29 GMT -5:00 [INFO] - Total contact items to receive: 1
14:58:29 GMT -5:00 [INFO] - Updated contact item: "Some Body"
14:58:29 GMT -5:00 [INFO] - Total appointment items to receive: 1
14:58:29 GMT -5:00 [INFO] - Updated appointment item: "cook some chicken"
14:58:30 GMT -5:00 [INFO] - END of Synchronization session.
14:58:30 GMT -5:00 [INFO] - Sync successfully completed.
14:58:30 GMT -5:00 [INFO] -
============================================================
================ SYNCHRONIZATION REPORT ================
============================================================
SYNCHRONIZATION COMPLETED SUCCESSFULLY!
---------------------------------------
Contacts:
---------
Sync completed successfully!
Sync type: two-way
| on Client | on Server
--------|-----------|----------
New | 0/ 0 | 0/ 0
Updated | 1/ 1 | 0/ 0
Deleted | 0/ 0 | 0/ 0
Calendar:
---------
Sync completed - WARNING: some items have not been inserted on server.
Sync type: two-way
| on Client | on Server
--------|-----------|----------
New | 0/ 0 | 0/ 0
Updated | 1/ 1 | 0/ 1
Deleted | 0/ 0 | 0/ 0
14:58:31 GMT -5:00 [INFO] - Outlook session closed successfully.
14:58:31 GMT -5:00 [INFO] - Syncronization process completed with errors (code = 2101).
14:58:35 GMT -5:00 [INFO] - Exiting from Outlook client.
20:14:18 GMT -5:00 [INFO] - Outlook Plugin opened And from the Funambol ds-server.log:
Code:
[2008-08-16 14:12:31,542] [funambol.zimbra] [ERROR] [B0B9551A876E6437ACDC6D12AAB
599B8] [fol-U1BSVUFOQ0U6UGhpbGlw] [philip@engagency.net] [scal] While try to fin
d twins, error occur
java.lang.NoSuchMethodError: com.funambol.common.pim.calendar.CalendarContent.ge
tDtStart()Lcom/funambol/common/pim/common/Property;
at ru.korusconsulting.connector.manager.CalendarManager.getTwins(Calenda
rManager.java:203)
at ru.korusconsulting.connector.funambol.CalendarSyncSource.getSyncItemK
eysFromTwin(CalendarSyncSource.java:187)
at com.funambol.server.engine.Sync4jStrategy.fixMappedItems(Sync4jStrate
gy.java:1342)
at com.funambol.server.engine.Sync4jStrategy.prepareFastSync(Sync4jStrat
egy.java:586)
at com.funambol.server.engine.Sync4jEngine.sync(Sync4jEngine.java:695)
at com.funambol.server.session.SyncSessionHandler.processModifications(S
yncSessionHandler.java:1667)
at com.funambol.server.session.SyncSessionHandler.processSyncMessage(Syn
cSessionHandler.java:1520)
at com.funambol.server.session.SyncSessionHandler.processInitSyncMapMess
age(SyncSessionHandler.java:961)
at com.funambol.server.session.SyncSessionHandler.processMessage(SyncSes
sionHandler.java:517)
at com.funambol.server.engine.SyncAdapter.processInputMessage(SyncAdapte
r.java:533)
at com.funambol.server.engine.SyncAdapter.processXMLMessage(SyncAdapter.
java:254)
at com.funambol.transport.http.server.LocalSyncHolder.processXMLMessage(
LocalSyncHolder.java:97)
at com.funambol.transport.http.server.Sync4jServlet.doPost(Sync4jServlet
.java:388)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at com.funambol.transport.http.server.LogContextFilter.doFilter(LogConte
xtFilter.java:115)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ss(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
7)
at java.lang.Thread.run(Unknown Source)
[2008-08-16 14:12:31,543] [funambol.engine.strategy] [INFO] [B0B9551A876E6437ACD
C6D12AAB599B8] [fol-U1BSVUFOQ0U6UGhpbGlw] [philip@engagency.net] [scal] Preparat
ion completed.
[2008-08-16 14:12:31,543] [funambol.engine.strategy] [INFO] [B0B9551A876E6437ACD
C6D12AAB599B8] [fol-U1BSVUFOQ0U6UGhpbGlw] [philip@engagency.net] [scal] Synchron
izing...
[2008-08-16 14:12:31,554] [funambol.zimbra] [ERROR] [B0B9551A876E6437ACDC6D12AAB
599B8] [fol-U1BSVUFOQ0U6UGhpbGlw] [philip@engagency.net] [scal] Error occur then
add synitem:
1.1
0
Rick's Guitar Room closes. Like right frigging now.
2
20080816T193000Z
DEFAULT_FOLDER
1
0
0
0
15
0
0
20080816T190000Z
Rick's is closing
[2008-08-16 14:12:31,555] [funambol.zimbra] [ERROR] [B0B9551A876E6437ACDC6D12AAB
599B8] [fol-U1BSVUFOQ0U6UGhpbGlw] [philip@engagency.net] [scal]
java.lang.NoSuchMethodError: com.funambol.common.pim.calendar.CalendarContent.ge
tDtStart()Lcom/funambol/common/pim/common/Property;
at ru.korusconsulting.connector.funambol.CalendarUtils.asElement(Calenda
rUtils.java:365)
at ru.korusconsulting.connector.base.ZimbraPort.requestCreateCalendar(Zi
mbraPort.java:909)
at ru.korusconsulting.connector.manager.CalendarManager.addItem(Calendar
Manager.java:329)
at ru.korusconsulting.connector.funambol.CalendarSyncSource.addSyncItem(
CalendarSyncSource.java:215)
at com.funambol.server.engine.Sync4jStrategy.execNewOperation(Sync4jStra
tegy.java:2435)
at com.funambol.server.engine.Sync4jStrategy.execSyncOperation(Sync4jStr
ategy.java:1220)
at com.funambol.server.engine.Sync4jStrategy.sync(Sync4jStrategy.java:75
1)
at com.funambol.server.engine.Sync4jEngine.sync(Sync4jEngine.java:716)
at com.funambol.server.session.SyncSessionHandler.processModifications(S
yncSessionHandler.java:1667)
at com.funambol.server.session.SyncSessionHandler.processSyncMessage(Syn
cSessionHandler.java:1520)
at com.funambol.server.session.SyncSessionHandler.processInitSyncMapMess
age(SyncSessionHandler.java:961)
at com.funambol.server.session.SyncSessionHandler.processMessage(SyncSes
sionHandler.java:517)
at com.funambol.server.engine.SyncAdapter.processInputMessage(SyncAdapte
r.java:533)
at com.funambol.server.engine.SyncAdapter.processXMLMessage(SyncAdapter.
java:254)
at com.funambol.transport.http.server.LocalSyncHolder.processXMLMessage(
LocalSyncHolder.java:97)
at com.funambol.transport.http.server.Sync4jServlet.doPost(Sync4jServlet
.java:388)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at com.funambol.transport.http.server.LogContextFilter.doFilter(LogConte
xtFilter.java:115)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ss(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
7)
at java.lang.Thread.run(Unknown Source)
[2008-08-16 14:12:31,555] [funambol.engine.strategy] [ERROR] [B0B9551A876E6437AC
DC6D12AAB599B8] [fol-U1BSVUFOQ0U6UGhpbGlw] [philip@engagency.net] [scal] Error executing sync operation
com.funambol.framework.engine.source.SyncSourceException: com.funambol.common.pi
m.calendar.CalendarContent.getDtStart()Lcom/funambol/common/pim/common/Property;
at ru.korusconsulting.connector.funambol.CalendarSyncSource.addSyncItem(
CalendarSyncSource.java:230)
at com.funambol.server.engine.Sync4jStrategy.execNewOperation(Sync4jStra
tegy.java:2435)
at com.funambol.server.engine.Sync4jStrategy.execSyncOperation(Sync4jStr
ategy.java:1220)
at com.funambol.server.engine.Sync4jStrategy.sync(Sync4jStrategy.java:75
1)
at com.funambol.server.engine.Sync4jEngine.sync(Sync4jEngine.java:716)
at com.funambol.server.session.SyncSessionHandler.processModifications(S
yncSessionHandler.java:1667)
at com.funambol.server.session.SyncSessionHandler.processSyncMessage(Syn
cSessionHandler.java:1520)
at com.funambol.server.session.SyncSessionHandler.processInitSyncMapMess
age(SyncSessionHandler.java:961)
at com.funambol.server.session.SyncSessionHandler.processMessage(SyncSes
sionHandler.java:517)
at com.funambol.server.engine.SyncAdapter.processInputMessage(SyncAdapte
r.java:533)
at com.funambol.server.engine.SyncAdapter.processXMLMessage(SyncAdapter.
java:254)
at com.funambol.transport.http.server.LocalSyncHolder.processXMLMessage(
LocalSyncHolder.java:97)
at com.funambol.transport.http.server.Sync4jServlet.doPost(Sync4jServlet
.java:388)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at com.funambol.transport.http.server.LogContextFilter.doFilter(LogConte
xtFilter.java:115)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:286)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ss(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
7)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoSuchMethodError: com.funambol.common.pim.calendar.Calenda
rContent.getDtStart()Lcom/funambol/common/pim/common/Property;
at ru.korusconsulting.connector.funambol.CalendarUtils.asElement(Calenda
rUtils.java:365)
at ru.korusconsulting.connector.base.ZimbraPort.requestCreateCalendar(Zi
mbraPort.java:909)
at ru.korusconsulting.connector.manager.CalendarManager.addItem(Calendar
Manager.java:329)
at ru.korusconsulting.connector.funambol.CalendarSyncSource.addSyncItem(
CalendarSyncSource.java:215)
... 29 more (I love these excessively verbose Java errors.)
