DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Communication / SOAP
  • Renvoyer une valeur du serveur SOAP WINDEV vers un client SOAP
  • Renvoyer un résultat en ne lui appliquant pas d'encodage
  • Types prédéfinis SOAP
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
SOAPEncodeRésultat (Fonction)
En anglais : SOAPEncodeResult
Permet de paramétrer le format de la valeur retournée par le serveur SOAP WINDEV au programme client SOAP. Par défaut, le serveur SOAP WINDEV retourne uniquement des données simples (par exemple chaîne de caractères, entier, booléen, ...).
La fonction SOAPEncodeRésultat permet de renvoyer au client SOAP des types spécifiques au protocole SOAP.
Attention : Cette fonction ne peut être utilisée que dans une application WINDEV de type "Serveur SOAP".
Exemple
RENVOYER SOAPEncodeRésultat(5, SOAPTypeEntier)
// Idem que RENVOYER 5 utilisé dans le code du serveur SOAP.
 
RENVOYER SOAPEncodeRésultat(maVariable, "montype")
Syntaxe
<Résultat> = SOAPEncodeRésultat(<Valeur à encoder> , <Type> [, <Espace de nommage> [, <Style d'encodage>]])
<Résultat> : Chaîne de caractères
Valeur encodée selon les paramètres spécifiés.
<Valeur à encoder> : Chaîne de caractères
Valeur à encoder selon les paramètres spécifiés.
<Type> : Constante ou chaîne de caractères
Type du résultat à retourner. Peut être :
  • une chaîne de caractères pour préciser un type spécifique.
  • un type prédéfini SOAP (voir les notes)
<Espace de nommage> : Chaîne de caractères optionnelle
Espace de nommage (appelé aussi "NameSpace") de la valeur à renvoyer.
<Style d'encodage> : Chaîne de caractères optionnelle
Style d'encodage de la valeur (appelé aussi "EncodingStyle"). Ce paramètre peut correspondre à tout espace de nommage défini dans le WSDL.
Remarques

Renvoyer une valeur du serveur SOAP WINDEV vers un client SOAP

Par défaut, pour renvoyer une valeur depuis un serveur SOAP WINDEV, il est possible d'utiliser le mot-clé RENVOYER dans les différentes fonctions du serveur SOAP.
Par exemple :
RENVOYER 5
RENVOYER "Chaîne résultat"
Pour renvoyer des types spécifiques (différents des types WINDEV), il est nécessaire d'utiliser la fonction SOAPEncodeRésultat.
Par exemple :
RENVOYER SOAPEncodeRésultat(5, SOAPTypeEntier, "urn:monNameSpace")
Remarque : La ligne de code suivante :
SOAPEncodeRésultat("valeur", "type", "espace", "style")
génère une enveloppe de réponse du type :
<NOMPROJETResponse xmlns="espace de nommage de NOMPROJETResponse" SOAP-ENV:encodingStyle="style">
<NOMPROJETResult xmlns:ns2="style" xsi:type="ns2:type">valeur</NOMPROJETResult>
</NOMPROJETResponse>

Renvoyer un résultat en ne lui appliquant pas d'encodage

La fonction SOAPEncodeRésultat utilisée sur un serveur SOAP WINDEV permet de renvoyer un résultat en lui appliquant un "encodage". Mais il est également possible de renvoyer une chaîne directement, sans que cette chaîne soit encodée. Dans ce cas, il faut que la chaîne XML soit valide et contienne au moins une des deux sous-chaînes ci-dessous :
  • "xmlns:"
  • </return>. Dans ce cas, le code XML doit être encadré par les balises <return> et </return>. Ces balises doivent être enlevées lors de la réception du résultat.
    Attention : Le XML est sensible à la casse : seule la balise </return> en minuscules est reconnue.
Du côté client, il est nécessaire d'utiliser la fonction SoapDonneRésultat avec la constante SoapRésultatXML.

Types prédéfinis SOAP

Les types SOAP pouvant être utilisés sont les suivants :
ConstanteType
SOAPTypeBinaireBase64Binaire
SOAPTypeBinaireHexaBinaire hexadécimal
SOAPTypeBooléenBooléen
SOAPTypeChaîneChaîne de caractères
SOAPTypeChaîneNormaliséeChaîne de caractères sans retour chariot (RC) et sans tabulation (TAB)
SOAPTypeDécimalTout nombre sans limite
SOAPTypeEntierEntier compris entre - 2 147 483 648 et + 2 147 483 647)
SOAPTypeEntierCourtEntier court
SOAPTypeEntierCourtNonSignéEntier court non signé
SOAPTypeEntierIllimitéEntier (sans limite)
SOAPTypeEntierLongEntier long
SOAPTypeEntierLongNonSignéEntier long non signé
SOAPTypeEntierNégatifEntier négatif (sauf 0)
SOAPTypeEntierNonNégatifEntier non négatif
SOAPTypeEntierNonPositifEntier non positif
SOAPTypeEntierNonSignéEntier non signé
SOAPTypeEntierPositifEntier positif (sans 0)
SOAPTypeOctetOctet
SOAPTypeOctetNonSignéOctet non signé
SOAPTypeRéelRéel
SOAPTypeRéelDoubleRéel double
SOAPTypeURLAdresse URL
Composante : wd300com.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 21/06/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale