Forum for iCal4OL, Print4OL and ICS4OL

Exchange of experiences / Erfahrungsaustausch / Get Help

You are not logged in.

Announcement

Verkauf von iCal4OL an Neukunden ist eingestellt! Keine Demo mehr verfügbar..
Diese Seite ist ausschliesslich für Kunden, welche auch noch zusätzliche Lizenzen kaufen können.
The selling of iCal4OL has ended! No trial available anymore..
This site is exclusively for customers, which may still want to buy additional licenses.

iCal4OL Version 2.16.6 is now available. See Announcements / Ankündigungen


#1 2014-08-02 20:10:00

df6
New member
Registered: 2014-08-02
Posts: 6

Fehler HTTP 500 mit OwnCloud = Invalid VObject. Document ended prematurely.

Lösung siehe http://ical.gutentag.ch/forum/viewtopic … 2969#p2969
------------------------------------------------------------------------------------------------------------

Hallo,

ich nutze seit heute iCal4OL um meine Outlook 2010 (SP2) Kontakte sowie einen Kalender mit Owncloud 7.0.0 zu synchronisieren. Die Owncloud Installation befindet sich auf einem 1&1 Webserver, auf welche ich über den 1&1 SSL-Proxy zugreife.
Die Snychrinisation der Kontakte funktioniert einfwandfrei. Die erste Synchronisation meines Outlook Kalenders hat auch funktioniert, sobald iCal4OL dann ein zweites mal den Kalender synchronisieren möchte erscheint folgende Fehlermeldung:

http://zeiher.org/Fehler500.JPG


Ich verbleibe mit der Bitte um baldige Hilfe.

Mit besten Grüßen
df6

Offline

 

#2 2014-08-02 20:24:31

Roland
Administrator
Registered: 2007-11-25
Posts: 1516

Re: Fehler HTTP 500 mit OwnCloud = Invalid VObject. Document ended prematurely.

Letzter Beitrag lesen - dort ist der AHA-Effekt!


Die Fehlermeldung kommt vom Webserver... warum kann ich nicht sagen! Eben ein Webserverproblem..
Evtl. den Assistenten [Andere] nochmals durchlaufen lassen, damit sicher alle URL's stimmen.

Zur Sicherheit können Sie mir das ganze Log.txt zusenden, damit ich sehe, ob Sie nicht etwas verändert haben, was indirekt zu diesem Problem führte.
Zb. Aufgaben-Sync, obwohl die App "task_enhanced" nicht aktiviert ist?!
Siehe eine meiner Emailadressen hier: www.gutentag.ch
Alle Daten werden selbstverständlich vertraulich behandelt.

Falls es ok wäre, wenn ich einen minimalen Abruftest von hier machen könnte, dann für kurze Zeit ein spezielles Passwort für mich setzen und mitteilen. Nach meinem Test dann gleich wieder zurück ändern.
(In Default.ini sind die verschlüsselten Passwörter drin (AES256). Falls Sie diese Datei mitschicken, entsprechende Zeilen löschen, falls ich das PW nicht sehen darf. Pfad: %AppData%\iCal4OL\)

Als Admin in OwnCloud kann man ja das Log von OwnCloud sehen und so konfigurieren, dass alle Meldungen aufgezeichnet werden. Evtl. ist danach in diesem Log sichtbar, wo es in OwnCloud Probleme gibt.

Last edited by Roland (2014-08-02 20:29:26)

Offline

 

#3 2014-08-02 20:44:03

df6
New member
Registered: 2014-08-02
Posts: 6

Re: Fehler HTTP 500 mit OwnCloud = Invalid VObject. Document ended prematurely.

Wow, das ging ja schnell, vielen Dank für die schnelle Antwort,

ich habe Ihnen die entsprechenden Daten per E-Mail zukommen lassen. Ich hatte tatsächlich im Vorfeld ausversehen die Aufgabensynchronisation aktiviert ohne die entsprechende App auf der Owncloud installiert zu haben. Habe danach aber der gesamten Owncloud Kalender gelöscht und nochmals neu synchronisiert. Soweit ich mich erinnern kann fällt das mit dem Zeitpunkt des Erscheinens der Fehlermeldung tatsächlich zusammen.

Offline

 

#4 2014-08-02 20:58:20

Roland
Administrator
Registered: 2007-11-25
Posts: 1516

Re: Fehler HTTP 500 mit OwnCloud = Invalid VObject. Document ended prematurely.

Letzter Beitrag lesen - dort ist der AHA-Effekt!

Für andere Leser..

Also da ist was kaputt gegangen. Scheint einen Fehler in OwnCloud zu geben, wenn ein Kalender gelöscht wird..

Im Prinzip ist es anzuraten, einen NEUEN Kalender in OwnCloud anzulegen. Evtl. heisst das sogar, ein neues Account in OC anlegen, wobei darauf geachtet werden muss, dass dieses NICHT GLEICH heisst, sonst werden die Termine in Outlook gelöscht!

Exakter:
Kaputt ist der Abruf per HTTP REPORT calendar-query mit sogenanntem "time-range-filter".

Es lässt sich in iCal4OL umgehen, indem auf Reiter "1. Wie" im Feld KENNUNG das Flag "multiget" mit "singleget" ersetzt wird.
Aber Sie sollten danach einen Sync ohne die Option "[ ] Nur Zeitspanne" machen... Erst ab zweitem Sync dann wieder aktivieren.
"singleget" ruft halt sämtliche HREFs (URL der Termine) per HTTP PROPFIND ab, und nicht nur jene, welche für die Zeitspanne nötig sind.... Deshalb ist es wichtig, das einmal ALLE Termine synchronisiert wurden (sonst geht da noch mehr Zeit verloren, falls es bereits vergangene Termine auf dem Server hat).

PS: Nicht vergessen Passwort wieder zurückzusetzen wink


Noch ein kleiner Nachtrag:
Da Sie ja nur ab -31 Tage hochgeladen haben - also ältere Termine befinden sich nicht auf dem Server, ist das Abschalten der [X] Zeitspanne eigentlich unnötig...

Last edited by Roland (2014-08-02 21:03:42)

Offline

 

#5 2014-08-02 21:05:59

df6
New member
Registered: 2014-08-02
Posts: 6

Re: Fehler HTTP 500 mit OwnCloud = Invalid VObject. Document ended prematurely.

Vielen Dank für die schnelle Antwort,

einen neuen Kalender hatte ich schon angelegt, leider ohne Erfolg. Ich versuche es nun mit einem anderen Benutzeraccount.

Grüße
df6

Offline

 

#6 2014-08-03 13:10:16

df6
New member
Registered: 2014-08-02
Posts: 6

Re: Fehler HTTP 500 mit OwnCloud = Invalid VObject. Document ended prematurely.

Hallo,

der Versuch mit singleget führte leider auch nicht zum Erfolg, es erscheint nun folgende Fehlermeldung:

http://zeiher.org/Fehler404.JPG


Auch das anlegen eines neuen Kalenders sowie die Verwendung eines neuen Benutzers hat immer den gleichen Fehler hervorgerufen. Wie gesagt die allererste Synchronisation funktioniert immer tadellos, sobald ich ein zweites Mal synchronisieren möchte erscheinen die beschriebenen Fehlermeldung.
Ich habe heute sogar meine Owncloud komplett neu aufgesetzt, erste Synchronisation hat geklappt, alle weiteren funktionieren dann nicht mehr.

Grüße
df6

Offline

 

#7 2014-08-03 15:15:05

Roland
Administrator
Registered: 2007-11-25
Posts: 1516

Re: Fehler HTTP 500 mit OwnCloud = Invalid VObject. Document ended prematurely.

Letzter Beitrag lesen - dort ist der AHA-Effekt!

Sie haben vergessen, den Assistenten [Andere] neu durchlaufen zu lassen.
"HTTP 404 Not found"... deutet auf falsche URL hin!
Jedenfalls half es bei mir "multiget" mit "singleget" (Testabruf hier..) zu ersetzen.

Evtl. auch einen Versuch wert:
Zusätzlich ins Feld KENNUNG das Flag "no_global" eintragen - also dies gleich nach dem Assistenzlauf (und neuem Kalender/Account) und noch mit "multiget" probieren.
Dadurch werden kürzere UID generiert - evtl. sind diese sonst für OwnCloud 7.0 zu lang (Feldlängenproblem in MySQL).

Offline

 

#8 2014-08-03 18:46:14

df6
New member
Registered: 2014-08-02
Posts: 6

Re: Fehler HTTP 500 mit OwnCloud = Invalid VObject. Document ended prematurely.

Habe jetzt alle Varianten durch, leider tauchen nach wie vor beiden Fehlermeldungen auf. Ich habe vor jeden neuen Versuch den Assistenten nue durchlaufen lassen und auch immer den Pfad überprüft.
Was ich nicht verstehen, warum läuft die erste Synchronisation immer sauber druch? Es wird immer alles so wie es sein soll übertragen.

Offline

 

#9 2014-08-03 18:54:58

Roland
Administrator
Registered: 2007-11-25
Posts: 1516

Re: Fehler HTTP 500 mit OwnCloud = Invalid VObject. Document ended prematurely.

Letzter Beitrag lesen - dort ist der AHA-Effekt!

Ich weiss auch nicht - gibt ja nichts, was da in iCal4OL umgestellt würde! Oder...?!
HTTP-404 sagt klar, dass die URL auf Reiter "1. Wie" nicht stimmt!
HTTP-500 sagt klar, dass ein Serverproblem vorliegt!

Wie schon geschrieben - es gibt in OwnCloud als Admin ein Log, wo auch Debug-Infos aufgezeichnet werden können.
Anhand davon müsste es möglich sein, den OwnCloud-Fehler(!) einzugrenzen.
Ich kann da wirklich nicht weiterhelfen, da es nun mal ein OwnCloud-Problem ist. Evtl. mal im OwnCloud-Forum stöbern, bzw. mit Erfahrungen zu 1&1..

Schon mit OwnCloud 6.0.x probiert?!

Last edited by Roland (2014-08-03 19:00:48)

Offline

 

#10 2014-08-03 19:01:03

df6
New member
Registered: 2014-08-02
Posts: 6

Re: Fehler HTTP 500 mit OwnCloud = Invalid VObject. Document ended prematurely.

Hallo,

leider sind weder in der Owncloud log noch in der Webspace log keinerlei Fehler aufgezeichnet. Dennoch vielen Dank für die umfangreiche und sehr zeitnahe Unterstützung!

Beste Grüße
df6

Offline

 

#11 2014-08-14 15:01:57

Roland
Administrator
Registered: 2007-11-25
Posts: 1516

Re: Fehler HTTP 500 mit OwnCloud = Invalid VObject. Document ended prematurely.

Das Problem wurde gefunden.

Ein Outlook-Termin hatte in den Notizen eine horizontale Zeile oder auch ein Smiley, Emoticon, Tile, etc. (http://www.utf8-chartable.de/unicode-ut … art=126976)
Diese sind in UTF-8 folgendermassen kodiert: F0 9F xx xx  (4 Hexcodes) 

OwnCloud kann aber diese Zeichen nicht verarbeiten und schreibt einen unvollständigen VEVENT in die Datenbank - Table "oc_clndr_objects" - Feld "calendardata" ein.
Bei MySQL-Backend-Konfiguration unterstützt OwnCloud schlichtweg nur 3-stellige UTF8-HEX-Werte, anstelle 4... wo eben diese Zeichen sind!

Ist mal so ein Termin unvollständig drin, kann nicht mehr synchronisiert werden! HTTP REPORT funktioniert danach nicht mehr.
Es gibt HTTP 500 oder 404, und im Admin-Interface im LOG sieht man den Text: Invalid VObject. Document ended prematurely.

Ich habe diese UTF-8-Serie nun neu (ab heute in 2.14.9) abgefangen und setzte diese auf "_". Also Download und Update nötig.


Um bestehende OwnCloud-Kalender zu flicken, benötigt es doch etwas Fachwissen:

In zb. phpMyAdmin - SQL-Suche nach:
SELECT * FROM `oc_clndr_objects` WHERE NOT (`calendardata` LIKE "%END:VCALENDAR%")

In calendardata fehlt am Schluss die Zeilen:
END:VEVENT
END:VCALENDAR
Also manuell anfügen oder Datensatz löschen.


...oder...
Table "oc_clndr_objects" als *.sql aus zb. myPhpAdmin exportieren.
Diese Datei zb. in Notepad++ laden, und bei SUCHEN - VORKOMMNISSE MARKIEREN, eingeben: END:VCALENDAR + [X] Lesezeichen setzen...[ALLE SUCHEN] und damit alle korrekten Zeilen markieren lassen.  Danach kann durchgeblättert werden, auf welcher Zeile=Termin dies fehlt. Dieser Termin ist defekt und muss in der Tabelle gelöscht werden.


-------------
Ein neues Problem gibt es mit OwnCloud 7:

Wenn man die Kontakte-App nur für einzelne Nutzergruppen freischaltet, kommt es zu diesem Fehler. Siehe auch
https://github.com/owncloud/core/issues/9865

Last edited by Roland (2014-11-11 15:02:51)

Offline

 

#12 2016-05-11 00:18:27

Roland
Administrator
Registered: 2007-11-25
Posts: 1516

Re: Fehler HTTP 500 mit OwnCloud = Invalid VObject. Document ended prematurely.

Ich habe in OC7 noch etwas experimentiert.
Ist der VEVENT durch ein Sonderzeichen abgeschnitten, könnte auch folgende PHP-Änderung helfen:

In ..\owncloud\3rdparty\Sabre\VObject\lib\Sabre\VObject\reader.php  (\ = /  ... ich habe OC7 unter meiner alten WinXP-Maschine installiert) folgende Zeilen suchen gehen:

Code:

                if ($nextLine===false)
                    throw new ParseException('Invalid VObject. Document ended prematurely.');

Ersetzten mit:

Code:

                if ($nextLine===false) {
                    $obj->DTSTART = "20160510";
                     $nextLine = "END:" . substr($line,6);
                    //throw new ParseException('Invalid VObject. Document ended prematurely.');
                }

Ich setze hier sicherheitshalbe DTSTART auf HEUTE (also entsprechend anderes Datum wählen), damit es zu keinem anderen PHP error kommt, falls DTSTART fehlt.
Das klappt natürlich nur, falls der Termin wirklich abgeschnitten wurde, und kein "END:VEVENT" hat.

Offline

 

Board footer