J'essaie d'appeler le service Web PersonalDetails_Update en lui transmettant un tableau de valeurs. Ces valeurs sont écrites avec succès dans la base de données pour laquelle le service Web est conçu. Cependant, il est également supposé renvoyer un ID pour l'enregistrement écrit dans la base de données. Mais je ne reçois rien en retour. Juste un écran vide sans XML ou source sous-jacente.Dépannage du service Web SOAP
Lorsque vous utilisez getLastRequest, je reçois cette erreur:
Fatal error: Uncaught SoapFault exception: [Client] Function ("getLastRequest") is not a valid method for this service in
code utilisé pour transmettre des données au service Web et en-têtes de demande/réponse:
$client->PersonalDetails_Update(array('personaldetails' => $params));
printf("<br/> Request = %s </br>", htmlspecialchars($client->getLastRequest()));
$result = $client->__getLastResponse();
$header = $client->__getLastResponseHeaders();
Lorsque vous utilisez getLastResponse et getLastResponseHeaders, je ne » Ne rien récupérer.
Merci pour votre inscription. Lorsque vous utilisez __soapCall comme vous l'avez écrit, j'obtiens l'erreur suivante: Erreur irrécupérable: exception SoapFault non interceptée: [soap: Serveur] Le serveur n'a pas pu traiter la requête. ---> Référence d'objet non définie sur une instance d'un objet. en – chocolatecoco
Pour répondre à votre question, oui j'utilise le standard PHP Soap Client. – chocolatecoco
c'est pourquoi je vous ai dit de vérifier si la réponse est une soapfault;). l'erreur que vous obtenez est l'erreur de service de savon, la demande envoyée par le client et la réponse reçue correctement. utilisez un try {} catch (SoapFault $ e) {} .... la raison pour laquelle "Le serveur n'a pas pu traiter la requête" est une question différente. vous devez vérifier vos paramètres de requête ou déboguer le serveur. –