PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Envoi requête Soap via un httprequete
Envoi requête Soap via un httprequete
Débuté par Alexandra ROY, 12 juil. 2016 12:15 - 6 réponses
Membre enregistré
26 messages
Posté le 12 juillet 2016 - 12:15
Bonjour,
mon projet : préparer un envoi soap pour ensuite l'envoyer via un httprequete.
j'utilise cette méthode pour des téléServices mis a disposition par une entreprise extérieur.

pour le moment, j'utilise les téléservices les plus simples et aucun soucis =
-alimentation du webservices
-préparation via un SoapPrépare de l'envoi (avec le nom du Ws, les contextes, les authentifications)
-ensuite envoi via un httpRequete à l'url fourni.
réponse OK

mon problème : aujourd'hui j'ai besoin d'utiliser des téléservices plus 'compliqués'
et il faut que j'ajoute une valeur dans l'entête du message soap.

mon code actuel:
MessageXML est une chaine
MessageXML = SOAPPrépare(MonWebService.Consulter, valeuraEnvoyer, ValeurAuthentification, ContexteLPS, ContexteBAM, UUID)
HTTPRequête(URLAppel,"","",MessageXML ,"application/soap+xml;charset=utf-8")

en réponse, j'ai
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"><SOAP-ENV:Body xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><SOAP-ENV:Fault><SOAP-ENV:Code><SOAP-ENV:Value>soap:Sender</SOAP-ENV:Value><SOAP-ENV:Subcode><SOAP-ENV:Value>soap:siram_10</SOAP-ENV:Value></SOAP-ENV:Subcode></SOAP-ENV:Code><SOAP-ENV:Reason><SOAP-ENV:Text xml:lang="fr">Une erreur technique survenue sur votre poste de travail empêche le traitement de votre demande. Vous pouvez renouveler votre demande. Si le problème persiste, contactez l'éditeur du progiciel ou votre responsable informatique.</SOAP-ENV:Text></SOAP-ENV:Reason><SOAP-ENV:Detail><siram:Erreur code="desir_120" severite="erreur" messageID="_ff8b0003-18d0-4646-be9b-3ab490ffa698" xmlns:siram="urn:siram">Action absente</siram:Erreur></SOAP-ENV:Detail></SOAP-ENV:Fault></SOAP-ENV:Body></soap:Envelope>


il me manque donc l'entete de type action (il existe dans la structure du WebService)
j'ai essayé d'ajouter
SOAPAjouteEntête("MonWebService.Consulter","Action","urn:MonWebService:1.0.0:consulter"+RC,Vrai)
avant mon SoapPrepare, mais j'ai le même message.

Donc si quelqu'un maitrise les soap/httprequete, ou bien qui veut essayer de m'aider.
je suis preneuse de bonne idée.
merci

--
Cordialement,
Alexandra
Membre enregistré
103 messages
Popularité : +4 (4 votes)
Posté le 12 juillet 2016 - 13:24
Bonjour Alexandra,

Pour savoir ce qu'il faut envoyer, il est préférable de savoir ce qui est attendu...
(je sais, c'est bateau... mais y'a pas mieux pour commencer).

C'est quoi la description du Webservice (WSDL) ?

A+
Membre enregistré
26 messages
Posté le 12 juillet 2016 - 15:38
voici un bout du wsdl qui concerne mon problème.

-<wsdl:portType name="xxxx">
-<wsdl:operation name="consulter">
<wsdl:input wsaw:Action="urn:xxxx:1.0.0:consulter" message="tns:consulterRequest"/>
<wsdl:output wsaw:Action="urn:xxxx:1.0.0:consulter" message="tns:consulterResponse"/>
</wsdl:operation>

je vois pour le mettre en entier le wdsl mais il est pour plusieurs appels.

--
Cordialement,
Alexandra
Membre enregistré
1 298 messages
Popularité : +20 (72 votes)
Posté le 12 juillet 2016 - 18:33
Je te conseil l'outil SOAPUI pour la réalisation de test en direction de webservice, ceci te permettra de voir les structures d'appels mais aussi les structures de retour lorsque l'appel est passé ou lorsqu'il est rejeté

--
Bertin CARRIERE
Consultant & Formateur
bertin.carriere@gmail.com
http://www.zen-project.be http://www.linkedin.com/in/bertincarriere

Belgique +32(0)2/318.02.67
France +33(0)3/66.722.542
Espagne +34.5/12.702.266

Membre de http://www.be-dev.be
Membre enregistré
344 messages
Popularité : +24 (28 votes)
Posté le 13 juillet 2016 - 06:59
Merci Bertin pour l'info concernant l'outil SOAPUI
au fait où le trouve t'on
tu n'aurez pas l'url de téléchargement

agréable journée

Alain

--
Utiliser l'aide avant que l'on vous aide
Bon développement
Alain PETTITI (apettiti.cg06.fr)
Avec licence PCSOFT certifiée et abonnement LST
Je peux prendre la main avec teamwiever
Apprentissage Windev : http://apprentissagewindev.blogspot.fr
Membre enregistré
1 298 messages
Popularité : +20 (72 votes)
Posté le 13 juillet 2016 - 10:01
Bonjour Alain

Merci google : https://www.soapui.org/downloads/soapui.html

--
Bertin CARRIERE
Consultant & Formateur
bertin.carriere@gmail.com
http://www.zen-project.be http://www.linkedin.com/in/bertincarriere

Belgique +32(0)2/318.02.67
France +33(0)3/66.722.542
Espagne +34.5/12.702.266

Membre de http://www.be-dev.be
Posté le 27 octobre 2023 - 15:53
Bonjour Alexandra,

Je travaille sur la même requête SOAP que vous et je rencontre les mêmes difficultés. Pourriez-vous me partager la solution que vous avez trouvée ?

Merci d'avance pour votre aide !

Cordialement,