Live Writer geht nicht mehr.

Hier können Probleme und alles andere in Deutscher Sprache gelöst werden.
Post Reply
Schamsen
Regular
Posts: 19
Joined: Mon Jun 19, 2006 6:36 pm

Live Writer geht nicht mehr.

Post by Schamsen »

Ja Topic sagt eh schon alles, ich weiss nur nicht warum ich bekomme immer folgende fehlermeldungen.

Image

Image

ich hab keinen schimmer woran da liegen könnte, ich hab schon mal was gelesen das man das xml rpc plugin updaten sollte dies ist aber am aktuellsten stand (1.29) der blog selbst ist auf version 1.2. und auch WLW ist ganz aktuell ging aber auch schon nimmer mit der beta 2 !

Habt ihr irgendwelche ratschläge für mich ? finds echt komisch bis vor kurzem gings noch problemlos.

Blog Adresse selbst ist http://schamsen.uttx.net/blog/
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Live Writer geht nicht mehr.

Post by garvinhicking »

Hi!

Was hast Du geändert seit es zuletzt klappte?

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Schamsen
Regular
Posts: 19
Joined: Mon Jun 19, 2006 6:36 pm

Post by Schamsen »

eventuell den blog auf aktuellsten stand gebracht aber dies kann ich nicht mehr 100%ig sagen. sonst sicher nichts
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking »

Hi!

Also bzgl. XML-RPC hat sich bei s9y im Kern nichts geändert seit version 1.0 - Änderungen gabs wenn dann nur im Plugin, aber da hat sich seit MOnaten auch nichts getan.

Vielleicht hast Du irgendwelche DAteien gelöscht, oder neue Plugins installiert? Versuch mal die Reihenfolge der Plugins zu verändern, setzt das XML-RPC Plugin mal testweise an den Anfang oder testweise ans Ende?

Ich nutze den LiveWriter nicht, daher kann ich nur vage vermuten.

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Schamsen
Regular
Posts: 19
Joined: Mon Jun 19, 2006 6:36 pm

Post by Schamsen »

garvinhicking wrote:Hi!



Vielleicht hast Du irgendwelche DAteien gelöscht, oder neue Plugins installiert? Versuch mal die Reihenfolge der Plugins zu verändern, setzt das XML-RPC Plugin mal testweise an den Anfang oder testweise ans Ende?

Grüße,
Garvin
ähm ja nur wie ? :D
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking »

Hi!
ähm ja nur wie ? :D
Backend > Plugins verwalten > ans Ende der Seite zu den Ereignis-Plugins gehen > Auf die gestrichelte Linie des XML-RPC Plugins klicken, Maus gedrückt halten, Plugin mittels Drag'n'Drop an eine andere Position verschieben bis es "einrastet" > "Speichern"-Button klicken.

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Schamsen
Regular
Posts: 19
Joined: Mon Jun 19, 2006 6:36 pm

Post by Schamsen »

danke hilft aber leider auch nicht. Eventuell hilft das aber ich kanns nicht sagen zumindest geht es bei mir so nicht, wahrscheinlich müsste man dies irgendwie an serendipity anpassen aber ich hab keinen schimmer wie.
Thanks a lot Ndoetster!! i think u found the best solution to my problem.. i think my host blocked the xmlrpc.php file that's why WLW can't access it..

solution is..
adding this into .htacess file
<Files xmlrpc.php>
SecFilterInheritance Off
</Files>

http://groups.msn.com/windowslivewriter ... 4488039596
blog.brockha.us
Regular
Posts: 695
Joined: Tue Jul 03, 2007 3:34 am
Location: Berlin, Germany
Contact:

Post by blog.brockha.us »

Ich habe heute auch mal den WLW ausprobiert. Klappt mit Serendipity im Prinzip wunderbar. Alle (mir) wichtigen Features werden unterstützt. Siehe auch entsprechender Artikel in meinem Blog.

Habe aber auch ein Problem. Nachdem WLW den Eintrag (eigentlich erfolgreich) gespeichert hat, kommt eine Fehlermeldung:

Image

Das hat zur Folge, dass der Artikel in Serendipity gespeichert wurde, WLW dies aber nicht erkennt und somit ein nachträgliches bearbeiten des Artikels nicht möglich ist. Der Eintrag erscheint auch nicht in der Liste vormals veröffentlichter Artikel.

Hat jemand eine Ahnung, was das sein könnte und wie man das Problem debuggen könnte? Ich kenne mich mit dem XMLRPC nicht gut genug aus und habe keine echten PHP Debug Möglichkeiten, so dass das Auffinden des Problems wohl etwas knifflig für mich wird.. Würde es ansonsten gleich mal fixen..
- Grischa Brockhaus - http://blog.brockha.us
- Want to make me happy? http://wishes.brockha.us/
blog.brockha.us
Regular
Posts: 695
Joined: Tue Jul 03, 2007 3:34 am
Location: Berlin, Germany
Contact:

Post by blog.brockha.us »

Hmm.. Ich habe das Problem gefunden, allerdings wundert mich gerade, warum das nicht viel größere Probleme gemacht hat..

Im Log des WLW kann man nachlesen, was ihm Probleme bereitet:

Code: Select all

Invalid response document returned from XmlRpc server --->
System.Xml.XmlException: There are multiple root elements. Line 2, position 2.
Das Ergebnis, das das XML RPC Plugin hier ausgibt, kann man auch schön im Logfile sehen:

Code: Select all

<br />
<b>Warning</b>:  Cannot modify header information - 
 headers already sent in <b>serendipity_event_xmlrpc/PEAR/XML/RPC/Server.php</b> 
on line <b>399</b><br />
<br />
<b>Warning</b>:  Cannot modify header information - 
headers already sent in <b>serendipity_event_xmlrpc/PEAR/XML/RPC/Server.php</b> 
on line <b>399</b><br />
<?xml version=""1.0"" encoding=""UTF-8""?>
<methodResponse>
<params>
<param>
<value><boolean>1</boolean></value>
</param>
</params>
</methodResponse>
Offensichtlich wird hier 2 Mal versucht, einen http header zu schicken. Im Code des Plugins findet man dann folgendes:

Code: Select all

case 'frontend_xmlrpc':
  // Those variables should not be set by other plugins!
  header('Content-Type: text/xml');
Und später wird das File serendipity_xmlrpc.inc.php inkludiert, das seinerseits den XML_RPC_Server instanziert, der als letztes dann in jedem Fall einen http header rausschickt! Daher also der 2. HTTP Header.

Was mich wundert ist, dass das Posten usw klappt, aber nur bei der Methode metaWeblog.editPost auf die Nase gefallen wird. Wahrscheinlich deshalb, weil das eine der wenigen Methoden ist, wo ein korrekter Rückgabewert erforderlich ist. Eigentlich müsste aber jede Rückgabe des XML-RPC Plugins so ein kaputtes XML schicken, wenn ich das richtig sehe.

Allerdings: Die Kategorien konnte WLW korrekt bei mir auslesen, da muss das XML wohl ok gewesen sein.. Sehr merkwürdig..

Jedenfalls: Wenn ich das

Code: Select all

header('Content-Type: text/xml'); 
aus obigem Codeblock auskommentiere, dann klappt auf einmal alles mit WLW! Nach dem veröffentlichen des Artikels erkennt WLW den Artikel als veröffentlicht und kann diesen nun auch nachträglich synchronisieren!

Jetzt ist die Frage: Warum ist die obige Codezeile in dem Plugin drin und warum hat sie bisher offenbar keine Probleme gemacht? Denn nach dieser Zeile wird in jedem Fall (außer bei einer XSD Anforderung) der XML_RPC_Server instanziiert, der in jedem Fall einen eigenen Header rausschickt. Somit müssten immer 2 Header rausgeschickt werden mit dem entsprechenden Output?!

Hat jemand eine Idee, ob ich die Zeile problemlos streichen (und einchecken) kann, oder ist die für irgendetwas im Plugin doch noch wichtig?
- Grischa Brockhaus - http://blog.brockha.us
- Want to make me happy? http://wishes.brockha.us/
blog.brockha.us
Regular
Posts: 695
Joined: Tue Jul 03, 2007 3:34 am
Location: Berlin, Germany
Contact:

Post by blog.brockha.us »

Hmm.. Der Patch löst das Problem auch nicht.. Die PEAR Server.php liefert noch mehrere Header.

Aber man kann das Problem dadurch umgehen, dass man hier die Warnungen unterbindet, falls mehrere Header ausgegeben werden sollen.

Dazu muss man in plugins/serendipity_event_xmlrpc/PEAR/XML/RPC/Server.php folgendes suchen:

Code: Select all

foreach($this->server_headers AS $header) {
    header($header);
}
und hiermit ersetzen:

Code: Select all

foreach($this->server_headers AS $header) {
    @header($header);
}
Vielleicht findet ja noch jemand heraus, warum eigentlich doppelte Header erzeugt werden, aber so lange behebt dieser Minipatch das Problem und Life Writer kann mit S9Y zusammen arbeiten.

Da er nichts kaputt machen kann, werde ich den Patch so in's CVS stellen.
- Grischa Brockhaus - http://blog.brockha.us
- Want to make me happy? http://wishes.brockha.us/
Post Reply