[kronolith] Kronolith 3.0.9 : Remote calendar : error davical
gerard breiner
gerard.breiner at ias.u-psud.fr
Fri Dec 2 19:04:30 UTC 2011
Jan Schneider <jan at horde.org> a écrit :
>
> Zitat von Gerard Breiner <gerard.breiner at ias.u-psud.fr>:
>
>> Le 30/11/2011 17:32, Jan Schneider a écrit :
>>>
>>> Zitat von Gerard Breiner <gerard.breiner at ias.u-psud.fr>:
>>>
>>>> Le 30/11/2011 14:48, Gerard Breiner a écrit :
>>>>> Le 30/11/2011 11:19, Jan Schneider a écrit :
>>>>>>
>>>>>> Zitat von Gerard Breiner <gerard.breiner at ias.u-psud.fr>:
>>>>>>
>>>>>>> Le 15/09/2011 14:30, Jan Schneider a écrit :
>>>>>>>>
>>>>>>>> Zitat von Gerard Breiner <gerard.breiner at ias.u-psud.fr>:
>>>>>>>>
>>>>>>>>> Le 14/09/2011 13:06, Jan Schneider a écrit :
>>>>>>>>>>
>>>>>>>>>> Zitat von Gerard Breiner <gerard.breiner at ias.u-psud.fr>:
>>>>>>>>>>
>>>>>>>>>>> Le 14/09/2011 11:24, Jan Schneider a écrit :
>>>>>>>>>>>>
>>>>>>>>>>>> Zitat von Gerard Breiner <gerard.breiner at ias.u-psud.fr>:
>>>>>>>>>>>>
>>>>>>>>>>>>> Hello,
>>>>>>>>>>>>>
>>>>>>>>>>>>> I use kronolith 3.0.9 under horde 4.0.8. My server
>>>>>>>>>>>>> caldav is davical version 0.9.9.3 . I created a remote
>>>>>>>>>>>>> calendar toward my server davical
>>>>>>>>>>>>> (https://calendar.domain/caldav.php/username/agenda).
>>>>>>>>>>>>> When I try to add an event from kronolith (client) to
>>>>>>>>>>>>> davical (server) I get the error
>>>>>>>>>>>>> "The event could not be added to the remote server".
>>>>>>>>>>>>>
>>>>>>>>>>>>> The davical's logs says the content type is incorrect...
>>>>>>>>>>>>> It seems that expect to have xml content but is not.
>>>>>>>>>>>>> Does caldav is full supported by kronolith 3.0.9 ?
>>>>>>>>>>>>
>>>>>>>>>>>> Yes.
>>>>>>>>>>>>
>>>>>>>>>>>>> Any help would be appreciated.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Thanks in advance
>>>>>>>>>>>>>
>>>>>>>>>>>>> Gerard Breiner
>>>>>>>>>>>>>
>>>>>>>>>>>>> [LOGS]
>>>>>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x]
>>>>>>>>>>>>> DAViCal: LOG: NOTICE:Unusual content-type of "(null)"
>>>>>>>>>>>>> and first word of content is ""
>>>>>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x]
>>>>>>>>>>>>> DAViCal: LOG: :***************** Response Header
>>>>>>>>>>>>> ****************
>>>>>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x]
>>>>>>>>>>>>> DAViCal: LOG: headers:-->X-Powered-By:
>>>>>>>>>>>>> PHP/5.3.3-7+squeeze1
>>>>>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x]
>>>>>>>>>>>>> DAViCal: LOG: headers:-->Server: 0.9
>>>>>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x]
>>>>>>>>>>>>> DAViCal: LOG: headers:-->DAV: 1, 2, 3, access-control,
>>>>>>>>>>>>> calendar-access, calendar-schedule
>>>>>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x]
>>>>>>>>>>>>> DAViCal: LOG: headers:-->DAV: extended-mkcol,
>>>>>>>>>>>>> calendar-proxy, bind, addressbook
>>>>>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x]
>>>>>>>>>>>>> DAViCal: LOG: headers:-->X-DAViCal-Version:
>>>>>>>>>>>>> DAViCal/0.9.9; DB/1.2.9
>>>>>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x]
>>>>>>>>>>>>> DAViCal: LOG: headers:-->Content-type: text/xml;
>>>>>>>>>>>>> charset="utf-8"
>>>>>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x]
>>>>>>>>>>>>> DAViCal: LOG: :******************** Response
>>>>>>>>>>>>> ********************
>>>>>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x]
>>>>>>>>>>>>> DAViCal: LOG: response:--><?xml version="1.0"
>>>>>>>>>>>>> encoding="utf-8" ?>
>>>>>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x]
>>>>>>>>>>>>> DAViCal: LOG: response:--><error xmlns="DAV:">
>>>>>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x]
>>>>>>>>>>>>> DAViCal: LOG: response:-->
>>>>>>>>>>>>> <urn:ietf:params:xml:ns:caldav:supported-calendar-data/>Incorrect content type for
>>>>>>>>>>>>> calendar:
>>>>>>>>>>>>> [Mon Sep 12 11:21:32 2011] [error] [client x.x.x.x]
>>>>>>>>>>>>> DAViCal: LOG: response:--></error>
>>>>>>>>>>>>> [LOGS]
>>>>>>>>>>>>
>>>>>>>>>>>> If possible, try to trace the communication between
>>>>>>>>>>>> Kronolith and DAViCal.
>>>>>>>>>>> By using firebug ?
>>>>>>>>>>
>>>>>>>>>> No, Firebug only traces the communication between the
>>>>>>>>>> browser and Kronolith. Use something like wireshark.
>>>>>>>>>>
>>>>>>>>>>>> Jan.
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> However, I've just made a try and the good news is it
>>>>>>>>>>> works very fine IF I comment in
>>>>>>>>>>> kronolith/lib/Driver/Ical.php the lines :
>>>>>>>>>>>
>>>>>>>>>>> [CODE]
>>>>>>>>>>> 435 if (!in_array($response->code, array(200,
>>>>>>>>>>> 201, 204))) {
>>>>>>>>>>> 436 Horde::logMessage(sprintf('Failed to
>>>>>>>>>>> create event on remote calendar: url = "%s", status = %s',
>>>>>>>>>>> 437 $url,
>>>>>>>>>>> $response->code), 'INFO');
>>>>>>>>>>> 438 throw new Kronolith_Exception(_("The event
>>>>>>>>>>> could not be added to the remote server."));
>>>>>>>>>>> 439
>>>>>>>>>>> [CODE]
>>>>>>>>>>
>>>>>>>>>> If commenting this out worked, you have a log entry in the
>>>>>>>>>> horde log that you didn't mention.
>>>>>>>>>>
>>>>>>>>> Here is :
>>>>>>>>> INFO: HORDE4 [kronolith] Failed to create event on remote
>>>>>>>>> calendar: url = "", status = 412 [pid 16916 on line 437 of
>>>>>>>>> "/www/horde4/kronolith/lib/Driver/Ical.php"]
>>>>>>>>
>>>>>>>> Response status 412 means that a precondition failed while
>>>>>>>> PUTing the event on the server. Unfortunately we don't read
>>>>>>>> the precondition error message yet. Can you check if davical
>>>>>>>> logs some error message?
>>>>>>>>
>>>>>>>> Jan.
>>>>>>>>
>>>>>>>
>>>>>>> Hello Jan
>>>>>>>
>>>>>>> I've kept on working about the "add event" that can't be added from
>>>>>>> kronolith to davical.
>>>>>>> So, I've used tshark for checking whether kronolith was actually
>>>>>>> sending the PUT data. I precise that kronolith and davical
>>>>>>> are located on
>>>>>>> the same server and their web interfaces are accessible by
>>>>>>> virtualhosts. So, I made tshark to listen on the server
>>>>>>> himself like this .
>>>>>>>
>>>>>>> tshark -n -i 3 -V -z conv,udp,ip.addr==x.x.x.x src host
>>>>>>> x.x.x.x > /tmp/tshark.txt
>>>>>>>
>>>>>>> give :
>>>>>>> ---------------------------------------------------------
>>>>>>> PUT
>>>>>>> /caldav.php/gbreiner/calendar/4ed4fd72-c7b4-4c55-8632-6ad781af450f.ics
>>>>>>> HTTP/1.1\r\n
>>>>>>> [Expert Info (Chat/Sequence): PUT
>>>>>>> /caldav.php/gbreiner/calendar/4ed4fd72-c7b4-4c55-8632-6ad781af450f.ics
>>>>>>> HTTP/1.1\r\n]
>>>>>>> [Message: PUT
>>>>>>> /caldav.php/gbreiner/calendar/4ed4fd72-c7b4-4c55-8632-6ad781af450f.ics
>>>>>>> HTTP/1.1\r\n]
>>>>>>> [Severity level: Chat]
>>>>>>> [Group: Sequence]
>>>>>>> Request Method: PUT
>>>>>>> Request URI:
>>>>>>> /caldav.php/gbreiner/calendar/4ed4fd72-c7b4-4c55-8632-6ad781af450f.ics
>>>>>>> Request Version: HTTP/1.1
>>>>>>> Authorization: Basic Z2JyZWluZXI6JGFuYWlzJA==
>>>>>>> Credentials: <mylogin>:<mypassword>
>>>>>>> User-Agent: PECL::HTTP/1.7.1 (PHP/5.3.3-7+squeeze3)
>>>>>>> Host: davicalserver.mydomain.fr
>>>>>>> Accept: */*
>>>>>>> Content-Type: text/calendar
>>>>>>> Content-Length: 0
>>>>>>> [Content length: 0]
>>>>>>> --------------------------------------------------------------
>>>>>>> My question is : An idea why the content-Length is 0 ? I guess
>>>>>>> it is why I can't add the event...
>>>>>>
>>>>>> No idea, this header is added by the HTTP extension (in your case).
>>>>>>
>>>>>>> However the data calendar that I try to add to davical server are :
>>>>>>
>>>>>> And are you sure that this data is sent with the PUT request?
>>>>>> If yes, then your HTTP extension is broken.
>>>>>>
>>>>>>> -------------------------------------
>>>>>>> BEGIN:VCALENDAR
>>>>>>> VERSION:2.0
>>>>>>> X-WR-CALNAME:Calendar of gerard breiner
>>>>>>> PRODID:-//The Horde Project//Horde iCalendar Library//EN
>>>>>>> METHOD:PUBLISH
>>>>>>> BEGIN:VEVENT
>>>>>>> DTSTART;VALUE=DATE:20111130
>>>>>>> DTEND;VALUE=DATE:20111130
>>>>>>> X-FUNAMBOL-ALLDAY:1
>>>>>>> DTSTAMP:20111129T145536Z
>>>>>>> UID:20111129155523.eVDkMKLWZNpO1PJbuVvGJuA at webmail1.ias.u-psud.fr
>>>>>>> CREATED:20111129T145523Z
>>>>>>> LAST-MODIFIED:20111129T145523Z
>>>>>>> SUMMARY:TITLE
>>>>>>> DESCRIPTION:DESCRIPTION
>>>>>>> LOCATION:PLACE
>>>>>>> CLASS:PUBLIC
>>>>>>> STATUS:CONFIRMED
>>>>>>> TRANSP:OPAQUE
>>>>>>> END:VEVENT
>>>>>>> END:VCALENDAR
>>>>>>> --------------------------------------------------
>>>>>>>
>>>>>>> Thanks in advance.
>>>>>>>
>>>>>>> Best regards.
>>>>>>>
>>>>>>> Gerard Breiner
>>>>>>> --
>>>>>>> Kronolith mailing list
>>>>>>> Frequently Asked Questions: http://horde.org/faq/
>>>>>>> To unsubscribe, mail: kronolith-unsubscribe at lists.horde.org
>>>>>>
>>>>>>
>>>>>> Jan.
>>>>>>
>>>>> Many thanks Jan! According to answers I've got from davical list
>>>>> (Andrew), data is sent with the PUT request. So I'm going to
>>>>> check the HTTP extension...
>>>>>
>>>>> Best regards
>>>>>
>>>>> Gerard Breiner
>>>> Jan,
>>>>
>>>> According to what I see from phpinfo, it seems that HTTP
>>>> extension is enabled...
>>>
>>> Of course it is. How could it be broken if it wasn't?
>>>
>>> Jan.
>>>
>> Oh yes Jan... Sorry... Is there a simple command for testing it ?
>
> No. Try a different HTTP backend, i.e. uninstall the http extension
> and install the curl extension, or talk to the http extension
> developer.
Good Idea Jan! I uninstalled pecl_http and... It works! I can add events!
In fact no need to install curl cause it was already installed...
Many thanks Jan !
Gerard Breiner
>
> Jan.
>
> --
> Do you need professional PHP or Horde consulting?
> http://horde.org/consulting/
>
> --
> Kronolith mailing list
> Frequently Asked Questions: http://horde.org/faq/
> To unsubscribe, mail: kronolith-unsubscribe at lists.horde.org
>
----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.
More information about the kronolith
mailing list