Hallo alle,
hoffentlich kann mir jemand nach einer tagelangen Suche helfen. Ich versuche ein SOAP-Dienst einzurichten. Dafür habe ich zu Testzwecken einen einfachen SOAP-Server geschrieben:
require_once('nusoap.php');
// Create the server instance
$server = new soap_server();
// Register the method to expose
$server->register('hello');
// Define the method as a PHP function
function hello($name) {
return 'Hello, ' . $name;
}
// Use the request to (try to) invoke the service
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : '';
$server->service($HTTP_RAW_POST_DATA);
Der Client sieht so aus:
require_once('nusoap.php');
// Create the client instance
$client = new nu_soapclient('http://localhost/helloworld.php');
// Call the SOAP method
$result = $client->call('hello', array('name' => 'Scott'));
// Display the result
print_r($result);
Das Zusammenspiel funktioniert auf dem Webserver von meinem Hoster, aber nicht lokal. Hier sind die Symptome:
Wenn ich den Server im Browser anzeigen lasse, sagt der Hoster-Server:
<SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode xsi:type="xsd:string">Client</faultcode>
<faultactor xsi:type="xsd:string"/>
<faultstring xsi:type="xsd:string">method '' not defined in service</faultstring>
<detail xsi:type="xsd:string"/>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Der lokaler Server:
XML-Verarbeitungsfehler: "Junk" nach Dokument-Element
Adresse: http://localhost/helloworld.php
Zeile Nr. 2, Spalte 1:<b>Notice</b>: Undefined index: content-type in <b>xxxxxx\nusoap.php</b> on line <b>3818</b><br />
^
Beim Aufruf des Clients wird auf dem Hoster-Server korrekter String zurückgeliefert und auf dem lokalen Server kommt die Meldung:
error in msg parsing: xml was empty, didn't parse!
Was fehlt meinem lokalen Server? Kann mir jemand einen Tip geben? Vielen Dank!
Gruß, Linda
--
2 hours of try and error can save 10 minutes of manual reading
2 hours of try and error can save 10 minutes of manual reading