Hi,

I have installed OX Snapshot 6.20.1 Rev5 and installed the DAV modules. Now I want to use DAV to sync with Outlook and Android.
Yes, I know it's just developed for OSX at the moment, but I want to get rid of funambol. The current Android Funambol Client can't sync calendars, and installation is not as trivial as it could be. To many "hacks" are needed because of many incompatible versions.

Now to DAV. Calendar sync works just great with some 3rd party apps. Nothing to complain about. But CardDAV is not that good. Mailed with a developer of an Android CardDAV sync app. He wanted to implement support fpr OX in his App.
He told me OXs CardDAV implementation is not really compilant to CardDAV standard.

Syncing from OX to Android works (kind of). I get all contacts, personal and global, plus two entrys "Kontakte" and "Globales Adressbuch". Sync Android to OX doesn't work.

Here are some snipets the developer wrote me (sorry its German):

Die CardDAV-Implementierung von OX ist nicht so doll, wie es aussieht. Das Problem ist, dass die einzelnen OX
Adressbücher nicht auf CardDAV-Adressbücher gemappt werden (sie wie bei mehreren Kalendern), sondern auf so ne Art
Gruppen (aber das wiederum mit proprietären Attributen).
....
OX hat aber einen ganz groben Schnitzer in seiner CardDAV-Implementierung. Der Pfad / wird als Adressbuch Collection
ausgewiesen, da aber das eigentliche Adressbuch in /carddav/Contacts/ liegt ist das ein klarer Verstoß gegen den
Standard (Adressbücher in Adressbüchern sind nicht erlaubt).
...
Warum die Änderungen noch nicht zurück synchronisiert werden weiß ich auch noch nicht. Der Server liefert einen
Fehler 412 zurück was darauf hindeutet, dass das etag nicht stimmt.


Now to my Questions:
1. Will there be an CardDAV implementation that will be more standard compilant? When? :-)
2. I can see my webserver returns error 412 but I can see nothing in OX log that points to a failure.

Code:
188.102.196.248 - - [12/Feb/2012:15:58:34 +0000] "PUT /carddav/Contacts/8f6328f7-95ef-4f8e-8700-444937cfd255.vcf HTTP/1.1" 412 402 "-" "CardDAV-Sync (Android) (like iOS/5.0.1 (9A405) dataaccessd/1.0) gzip"

Code:
Feb 12, 2012 3:58:34 PM com.openexchange.log.internal.LoggerTask call
INFO: Logged at: com.openexchange.authentication.ldap.LDAPAuthentication.handleLoginInfo(LDAPAuthentication.java:136)
User marten successful authenticated.
Feb 12, 2012 3:58:34 PM com.openexchange.log.internal.LoggerTask call
INFO: Logged at: com.openexchange.tools.webdav.OXServlet.addSession(OXServlet.java:434)
Login:marten IP:188.102.196.248 AuthID:e5734e8acea64601a9fccccb1a5a365e Agent:CardDAV-Sync (Android) (like iOS/5.0.1 (9A405) dataaccessd/1.0) gzip Client:nul
l(null) Interface:CARDDAV Context:1(1,defaultcontext) User:10(marten) Session:1938bd473b5d4f28828cc969e1dbbec0 Random:f17377c3e6d44d1ea0ef1495fedb1d66
Feb 12, 2012 3:58:34 PM com.openexchange.log.internal.LoggerTask call
INFO: Logged at: com.openexchange.carddav.servlet.CardDAV.logout(CardDAV.java:198)
Logout  Context:1(1,defaultcontext) User:10(marten) Session:1938bd473b5d4f28828cc969e1dbbec0
Feb 12, 2012 3:58:34 PM com.openexchange.log.internal.LoggerTask call
INFO: Logged at: com.openexchange.mail.cache.MailAccessCacheEventListener.handleEvent(MailAccessCacheEventListener.java:120)
Detected a removed session: 1938bd473b5d4f28828cc969e1dbbec0. Removed all possibly cached mail access instances for user 10 in context 1
Feb 12, 2012 3:58:34 PM com.openexchange.log.internal.LoggerTask call
INFO: Logged at: com.openexchange.sessiond.impl.SessiondServiceImpl.getSession(SessiondServiceImpl.java:158)
Session not found. ID: 1938bd473b5d4f28828cc969e1dbbec0
Feb 12, 2012 3:58:34 PM com.openexchange.log.internal.LoggerTask call
INFO: Logged at: com.openexchange.authentication.ldap.LDAPAuthentication.handleLoginInfo(LDAPAuthentication.java:136)
User marten successful authenticated.
Feb 12, 2012 3:58:34 PM com.openexchange.log.internal.LoggerTask call
INFO: Logged at: com.openexchange.tools.webdav.OXServlet.addSession(OXServlet.java:434)
Login:marten IP:188.102.196.248 AuthID:52040285c6214273925fee07f9122a03 Agent:CardDAV-Sync (Android) (like iOS/5.0.1 (9A405) dataaccessd/1.0) gzip Client:null(null) Interface:CARDDAV Context:1(1,defaultcontext) User:10(marten) Session:b97b91fa0afa4b878f13a3b53985c00e Random:b1fdc8bf0406496880b5558c6d937246
Feb 12, 2012 3:58:34 PM com.openexchange.log.internal.LoggerTask call
INFO: Logged at: com.openexchange.carddav.servlet.CardDAV.logout(CardDAV.java:198)
Logout  Context:1(1,defaultcontext) User:10(marten) Session:b97b91fa0afa4b878f13a3b53985c00e
Feb 12, 2012 3:58:34 PM com.openexchange.log.internal.LoggerTask call

Is there an option for debug-log for DAV?
Any hints?


Kind regards,
Christian