Fatal error: Uncaught SoapFault exception: [Client] looks like we got no XML document

cengizhdde

Mitglied
Hallo zusammen,

vor der Beschreibung meines Anliegens, hier erst einmal die System- und Entwicklungsumgebung sowie Informationen bezüglich
gefundener Lösungen im Google/in Foren:

System- und Entwicklungsumgebung:

- Windows NT 6.1 build 7601 (Windows 7 Business Edition Service Pack 1)
- PHP v5.3.8
- Apache-Version : Apache/2.2.21 (Win32) mod_ssl/2.2.21 OpenSSL/1.0.0e PHP/5.3.8 / Apache 2.0 Handler
- Web-/Applikationsserver: Xampp (Windows)

Umgesetzte Lösungen:
- php_openssl.dll ist aktiv (nicht in Kommentar gesetzt, da sonst SoapServer/SoapClient nicht instanziiert bzw. gefunden werden kann)

Nun zu meinem Anliegen.

Ich möchte per Amazon Webservice z. B. auf die Produktkategorien zugreifen, und das Ergebnis (gefundene Kategorien) ebenfalls über
Webservice zur Verfügung stellen.

Meine Anwendung für den Zugriff auf die Amazon-Produktkategorien funktionieren, da ich es lokal sowie auf meiner Domain getestet habe.

Ich habe zusätzlich einen Skript angelegt, dass als Soap Server dient. Hier werden die Methoden zur Verfügung gestellt, auf das der
Client per HTTP-Soap zugreifen soll.

Hier ein Überblick:
PHP:
<?php
	/**
	 * Zugriff auf die Amazon API (funktioniert!)
	 */
	function getNodes($params) {
		..... // Authentifizierung, Parameterseten, Signieren etc.
		$response = $this->sendRequest($request); // Zurück kommt ein komplexes Gebilde (mehrdimensionales Array)
		return $response;
	}
	
	/**
	 * Der Soap-Server mit Registrierung verfügbarer Methoden, auf den die Webservice-Clients
	 * zugreifen
	 */
	$server = new SoapServer(null,array('uri' => "urn://mydomain/res"));
	$server->addFunction('getNodes');
	$server->handle();
?>
Der (Webservice) Server greift auf die Amazon API zu und soll das Ergebnis zurück geben (return)
PHP:
<?php
	/**
	 * Der Webservice-Client
	 */
	$client = new SoapClient($wsdl, array( 
		"location" => 'http://xxxxxxxx.com/soap/server.php',
		"uri" => 'http://xxxxxxx.com/soap/server.php?wsdl';
	));
	
	$params = array(
		// AssociateTag, accessKey, secretAccessKey und weitere Parameter (z. B. BrowseNode)
		"features" => SOAP_USE_XSI_ARRAY_TYPE
	);
	
	$client->__setSoapHeaders($soapHeaders);
	$response = $client->getNodes($params); // Bei diesem Aufruf kommt die Fehlermeldung !!
	print_r($response);
?>
Wenn ich den Webservice-Client aufrufe, wird folgende Fehlermeldung angezeigt:

Fatal error: Uncaught SoapFault exception: [Client] looks like we got no XML document in ....../index.php:20 Stack trace: #0 [internal function]: SoapClient->__call('getNode', Array) #1 ...../index.php(20): SoapClient->getNode(Array) #2 {main} thrown in ...../index.php on line 20

Ich arbeite seit einigen Tagen an einer Lösung und bin für jegliche Unterstützung dankbar.

Vielen Dank.
Cengiz
 
Zuletzt bearbeitet von einem Moderator:

Neue Beiträge

Zurück