Sur les appels de web service, j'ai implémenté la gestion des "SoapFault" comme ceci :
Déclarations :
Code : Tout sélectionner
// Gestion des soapFault
dlFaultPtr s * inz
dlFaultCode s 64 inz
dlFaultString s 128 inz
dlFaultActor s 128 inz
dlFaultDetail s 128 inz
Code : Tout sélectionner
lFaultPtr = axiscStubGetSOAPFault(pHandler);
if (lFaultPtr <> *null);
lFaultCode = %str(axiscSoapFaultGetFaultcode(lFaultPtr));
lFaultString = %str(axiscSoapFaultGetFaultstring(lFaultPtr));
lFaultActor = %str(axiscSoapFaultGetFaultactor(lFaultPtr));
lFaultDetail = %str(axiscSoapFaultGetSimpleFaultDetail(lFaultPtr));
endif;
- Pas de faute dans la réponse (la réponse est identique aux 13 précédentes ( {"statut":"OK","message":"Numéro valide"} )
- L'appel de la procédure "axiscSoapFaultGetFaultcode" plante pour un paramètre manquant (MCH3601 - Pointeur non défini pour position mémoire référencée).
Quelqu'un a-t'il déjà rencontré un problème identique ?
Merci.