Hi,
Wir haben hier ein spezielles Problem. Wir nutzen Perl und SOAP::Lite
um ein SOAP Server als CGI Script zu realisieren.
Wenn ich nun ein SOAP Call absetze und nutze ein apache 1.3, dann
kriege ich folgende ANtwort:
Date: Thu, 07 Dec 2006 17:11:42 GMT
Server: Apache
Content-Length: 3419
SOAPServer: SOAP::Lite/Perl/0.69
Connection: close
Content-Type: text/xml; charset=utf-8
<?xml version="1.0" encoding="UTF-8"?><soap:Envelope
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ecceroma="http://ecceroma.ecce-terram.de/ECCEROMAServer"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><getUs
erDataResponse
xmlns="http://ecceroma.ecce-terram.de/ECCEROMAServer"><errors
xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="ecceroma:Error[0]"
/><outParameters xsi:type="SOAP-ENC:Array"
SOAP-ENC:arrayType="ecceroma:Parameter[19]">
...
<key xsi:type="xsd:string">Ecom_ShipTo_Postal_City</key><value
xsi:type="xsd:string">CONTENTDATA</value></item>
CONTENTDATA sind Textdaten. Die beinhalten Umlaute, die sind auch
korrekt UTF-8 codiert.
Nun ersetze ich apache1.3 durch apache2.0 bzw. 2.2. Sonst bleibt
alles gleich. DIe Konfiguration ist nahe an den Defaults. Auch
Zusatzmodule wie mod_perl oder fastcgi werden nicht genutzt.
Nun stelle ich haargenau die selbe Anfrage und erhalte folgende Antwort:
Date: Thu, 07 Dec 2006 17:14:44 GMT
Server: Apache/2.2.3 (Unix) mod_ssl/2.2.3 OpenSSL/0.9.7d
SOAPServer: SOAP::Lite/Perl/0.69
Content-Length: 3419
Connection: close
Content-Type: text/xml; charset=utf-8
<?xml version="1.0" encoding="UTF-8"?><soap:Envelope
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ecceroma="http://ecceroma.ecce-terram.de/ECCEROMAServer"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><getUs
erDataResponse
xmlns="http://ecceroma.ecce-terram.de/ECCEROMAServer"><errors
xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="ecceroma:Error[0]"
/><outParameters xsi:type="SOAP-ENC:Array"
SOAP-ENC:arrayType="ecceroma:Parameter[19]">
...
<key xsi:type="xsd:string">Ecom_ShipTo_Postal_City</key><value
xsi:type="xsd:string">CONTENTDATA</value></item>
NUN sind die Textdaten in ISO-LATIN1 codiert. Es ist sonst real
nichts anders. Der einzige Unterschied ist Apache 2 statt 1.3.
Mir sind absolut die Ideen ausgegangen. Nur das AddDefaultCharset
hier nichts mit zu tun hat, bin ich inzwischen durch Tests sicher.
Hat jemand eine Idee ?
Terra
--
ECCE TERRAM Internet Services GmbH Tel: 0441 500 120
An der grossen Wisch 36 Fax: 0441 500 1229
26133 Oldenburg
Ex Astris Scientia
--------------------------------------------------------------------------
Apache HTTP Server Mailing List "users-de"
unsubscribe-Anfragen an [EMAIL PROTECTED]
sonstige Anfragen an [EMAIL PROTECTED]
--------------------------------------------------------------------------