Sam issue as #181 Invalid DAV response: Couldn't parse Multi-Status response on PROPFIND



  • hi! i have the same problem with my owncloud server, can you help?

    D/davdroid.WebDavResource(31917): Using preemptive authentication (not compatible with Digest auth)
    D/davdroid.SNISocketFactory(31917): Setting SNI hostname
    I/davdroid.SNISocketFactory(31917): Established TLSv1 connection with xxx.com using TLS_ECDHE_RSA_WITH_RC4_128_SHA
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 >> "OPTIONS /owncloud/remote.php/carddav/ HTTP/1.1[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 >> "Host: xxx.com[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 >> "Connection: Keep-Alive[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 >> "User-Agent: DAVdroid/0.5.11-alpha[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 >> "Accept-Encoding: gzip,deflate[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 >> "Authorization: Basic xxxxxxxxxxx=[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 >> "[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "HTTP/1.1 200 OK[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Date: Tue, 01 Apr 2014 18:58:18 GMT[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Server: Apache[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Set-Cookie: 51a889bbe4727=edekv7dbe0pv3akpubt8c99tb7; path=/owncloud; HttpOnly[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Expires: Thu, 19 Nov 1981 08:52:00 GMT[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Pragma: no-cache[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Strict-Transport-Security: max-age=31536000[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Set-Cookie: 51a889bbe4727=mioa6qr91vdj6tt4eosle33rm6; path=/owncloud; secure; HttpOnly[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Allow: OPTIONS, GET, HEAD, DELETE, PROPFIND, PUT, PROPPATCH, COPY, MOVE, REPORT[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "DAV: 1, 3, extended-mkcol, addressbook, access-control, calendarserver-principal-property-search[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "MS-Author-Via: DAV[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Accept-Ranges: bytes[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "X-Sabre-Version: 1.7.6[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Vary: Accept-Encoding[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Content-Encoding: gzip[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Strict-Transport-Security: max-age=15768000[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Keep-Alive: timeout=5, max=100[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Connection: Keep-Alive[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Transfer-Encoding: chunked[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "Content-Type: text/html[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-17 << "[\r][\n]"
    D/davdroid.SNISocketFactory(31917): Setting SNI hostname
    I/davdroid.SNISocketFactory(31917): Established TLSv1 connection with xxx.com using TLS_ECDHE_RSA_WITH_RC4_128_SHA
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> "PROPFIND /owncloud/remote.php/carddav/ HTTP/1.1[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> "Content-Type: text/xml; charset=UTF-8[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> "Depth: 0[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> "Content-Length: 88[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> "Host: xxx.com[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> "Connection: Keep-Alive[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> "User-Agent: DAVdroid/0.5.11-alpha[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> "Accept-Encoding: gzip,deflate[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> "Authorization: Basic xxxxxxxxxx=[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> "[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> "[\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> " [\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> " [\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> " [\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 >> ""
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "HTTP/1.1 207 Multi-Status[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "Date: Tue, 01 Apr 2014 18:58:18 GMT[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "Server: Apache[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "Set-Cookie: 51a889bbe4727=bpjmqouqt8rgiqqrfeesr51ph6; path=/owncloud; HttpOnly[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "Expires: Thu, 19 Nov 1981 08:52:00 GMT[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "Pragma: no-cache[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "Strict-Transport-Security: max-age=31536000[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "Set-Cookie: 51a889bbe4727=eo16fe92bsol29erqk0ocegl93; path=/owncloud; secure; HttpOnly[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "Vary: Brief,Prefer[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "DAV: 1, 3, extended-mkcol, addressbook, access-control, calendarserver-principal-property-search[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "Strict-Transport-Security: max-age=15768000[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "Keep-Alive: timeout=5, max=100[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "Connection: Keep-Alive[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "Transfer-Encoding: chunked[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "Content-Type: application/xml; charset=utf-8[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "1ae[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "[\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "[\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "<?xml version="1.0" encoding="utf-8"?>[\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "/owncloud/remote.php/carddav//d:href/owncloud/remote.php/carddav/principals/vader//d:href/d:current-user-principal/d:propHTTP/1.1 200 OK/d:status/d:propstat/d:response/d:multistatus[\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "0[\r][\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "[\r][\n]"
    E/davdroid.ServerInfoLoader(31917): DAV error while querying server info
    E/davdroid.ServerInfoLoader(31917): at.bitfire.davdroid.webdav.DavException: Invalid DAV response: Couldn't parse Multi-Status response on PROPFIND
    E/davdroid.ServerInfoLoader(31917): at at.bitfire.davdroid.webdav.WebDavResource.propfind(WebDavResource.java:274)
    E/davdroid.ServerInfoLoader(31917): at at.bitfire.davdroid.syncadapter.QueryServerDialogFragment$ServerInfoLoader.loadInBackground(QueryServerDialogFragment.java:129)
    E/davdroid.ServerInfoLoader(31917): at at.bitfire.davdroid.syncadapter.QueryServerDialogFragment$ServerInfoLoader.loadInBackground(QueryServerDialogFragment.java:1)
    E/davdroid.ServerInfoLoader(31917): at android.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:312)
    E/davdroid.ServerInfoLoader(31917): at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:69)
    E/davdroid.ServerInfoLoader(31917): at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:57)
    E/davdroid.ServerInfoLoader(31917): at android.os.AsyncTask$2.call(AsyncTask.java:288)
    E/davdroid.ServerInfoLoader(31917): at java.util.concurrent.FutureTask.run(FutureTask.java:237)
    E/davdroid.ServerInfoLoader(31917): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
    E/davdroid.ServerInfoLoader(31917): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
    E/davdroid.ServerInfoLoader(31917): at java.lang.Thread.run(Thread.java:841)
    E/davdroid.ServerInfoLoader(31917): Caused by: org.xmlpull.v1.XmlPullParserException: Unexpected token (position:unknown @3:1 in java.io.InputStreamReader@42748a6)
    E/davdroid.ServerInfoLoader(31917): at org.kxml2.io.KXmlParser.next(KXmlParser.java:422)
    E/davdroid.ServerInfoLoader(31917): at org.kxml2.io.KXmlParser.next(KXmlParser.java:310)
    E/davdroid.ServerInfoLoader(31917): at org.simpleframework.xml.stream.PullReader.read(PullReader.java:105)
    E/davdroid.ServerInfoLoader(31917): at org.simpleframework.xml.stream.PullReader.next(PullReader.java:89)
    E/davdroid.ServerInfoLoader(31917): at org.simpleframework.xml.stream.NodeReader.readElement(NodeReader.java:111)
    E/davdroid.ServerInfoLoader(31917): at org.simpleframework.xml.stream.NodeReader.readRoot(NodeReader.java:85)
    E/davdroid.ServerInfoLoader(31917): at org.simpleframework.xml.stream.NodeBuilder.read(NodeBuilder.java:84)
    E/davdroid.ServerInfoLoader(31917): at org.simpleframework.xml.stream.NodeBuilder.read(NodeBuilder.java:58)
    E/davdroid.ServerInfoLoader(31917): at org.simpleframework.xml.core.Persister.read(Persister.java:543)
    E/davdroid.ServerInfoLoader(31917): at at.bitfire.davdroid.webdav.WebDavResource.propfind(WebDavResource.java:272)
    E/davdroid.ServerInfoLoader(31917): ... 10 more
    

  • developer

    It seems that the OwnCloud server response is misformatted:

    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "<?xml version="1.0" encoding="utf-8"?>[\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "/owncloud/remote.php/carddav//d:href/owncloud/remote.php/carddav/principals/vader//d:href/d:current-user-principal/d:propHTTP/1.1 200 OK/d:status/d:propstat/d:response/d:multistatus[\n]"
    D/ch.boye.httpclientandroidlib.wire(31917): http-outgoing-18 << "[\r][\n]"
    

    Can you check if your OwnCloud server works correctly? I don't think this is a DAVdroid problem.

    PS: Your logs where misformatted, too; please always enclose them in ```


  • developer

    Possibly a Keep-Alive issue, see #225 for details.



  • i will investigate that next week. however, just tried "ContactSync - Testversion" and there i can enter https://xxx.com/owncloud/remote.php/caddav/addressbooks/$user$/$contactlist$ and this works. maybe you could implement an "expert" mode where one can insert the whole url and no need for auto-provisioning?


  • developer

    Ok, I don't think this is a Keep-Alive issue because it's not a NoHttpResponseException but a org.xmlpull.v1.XmlPullParserException.

    Please follow up in #181.



  • hi!

    I solved the problem: some owncloud app added an invalid character in the xml answer to the client request. now it works great, thanks for your efforts!


Log in to reply
 

Looks like your connection to Bitfire App Forums was lost, please wait while we try to reconnect.