PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 26 → Consommation webservice SOAP Appel multiple
Consommation webservice SOAP Appel multiple
Débuté par Mickaël CRENIER, 02 mai 2021 22:05 - 1 réponse
Membre enregistré
11 messages
Posté le 02 mai 2021 - 22:05
bonjour,

J'ai importé un webservice Soap qui permet d'appeler une références. Ce WS permet d'obtenir des informations sur la dite référence. Tout fonctionne très bien quand j'appelle une seule référence.

Hors, ce WS permet également d'appeler une liste de référence pour obtenir toutes les informations liées. Le temps de traitement est ainsi beaucoup plus court. Cela évite également de faire tomber le serveur en cas d'appels successifs trop nombreux (> 500).

La structure d'appel du WS est la suivante :
MonWS > listereference >reference

Concrètement :
- pour un appel simple avec REF1, le code est le suivant
MonWS.listereference.reference = REF1

ce qui sous SoapUI donne :
<listereference>
<reference>REF1</reference>
</listereference>

- pour un appel multiple avec REF1 et REF 2, j'ai essayé
MonWS.listereference.reference = REF1
MonWS.listereference.reference = REF2

=> seul REF2 est traité
MonWS.listereference.reference = REF1, REF2

plantage du WS.

Sous SoapUI, cela donne ce code, qui fonctionne très bien :
<listereference>
<reference>REF1</reference>
</listereference>
<listereference>
<reference>REF2</reference>
</listereference>

Bref, avant de faire tous les tests possibles, je demande :)

Merci pour vos pistes à venir !

--
Mickaël CRENIER
Membre enregistré
11 messages
Posté le 14 juin 2021 - 17:18
Bonjour,

Je m'autoréponds.

Il suffit en fait simplement d'utiliser un indice, c'est tout simple. :D
MonWS.listereference[i].reference = Valeur

ce qui donne :
MonWS.listereference[1].reference = REFA
MonWS.listereference[2].reference = REFB


et pour la lecture de la réponse, il suffit de procéder de la même façon.

Bon dev !

--
Mickaël CRENIER