SOAPMessageV2 - Champ d’application, global

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 10 minutes de lecture
  • L’API SOAPMessageV2 fournit des méthodes pour envoyer un message SOAP sortant à l’aide de JavaScript.

    Utilisez cette API pour gérer la réponse renvoyée par le fournisseur SOAP.

    Vous pouvez utiliser cette API dans les applications incluses dans le périmètre ou dans le périmètre global.

    Cette API s’exécute dans l’espace de noms sn_ws .

    SOAPMessageV2 - SOAPMessageV2()

    Instancie un objet SOAPMessageV2 vide.

    Lors de l’utilisation d’un objet instancié de cette façon, vous devez spécifier manuellement une action SOAP et un point de terminaison.

    Tableau 1. Paramètres
    Nom Type Description
    Aucun
    var sm = new sn_ws.SOAPMessageV2();

    SOAPMessageV2 : SOAPMessageV2(String soapMessage, String soapFunction)

    Instancie un objet SOAPMessageV2 à partir d’un enregistrement de message SOAP et d’une fonction associée à cet enregistrement.

    Des valeurs telles que le point de terminaison, l’authentification ou Serveur MID les paramètres de l’enregistrement de message SOAP s’appliquent à cet objet.

    Tableau 2. Paramètres
    Nom Type Description
    Message de savon Chaîne Enregistrement de message SOAP que vous souhaitez utiliser comme base pour cet objet.
    soapFunction (Fonction de savon) Chaîne Fonction SOAP que vous souhaitez exécuter. Les fonctions SOAP disponibles dépendent du WSDL fourni par le fournisseur de services Web.
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.

    SOAPMessageV2 - execute()

    Envoie le message SOAP au point de terminaison.

    Tableau 3. Paramètres
    Nom Type Description
    Aucun
    Tableau 4. Renvoie
    Type Description
    SOAPResponseV2 - Champ d’application, global Réponse renvoyée par le fournisseur SOAP.
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    var response = sm.execute(); //Might throw exception if http connection timed out or some issue with sending request itself because of encryption/decryption of password.

    SOAPMessageV2 : executeAsync()

    Envoie le message SOAP à la file d’attente ECC.

    Les messages SOAP de la file d’attente ECC sont traités par la règle métier SOAPClient.

    Par défaut, cette règle métier ne s’exécute pas de façon asynchrone. Pour configurer cette règle métier afin qu’elle s’exécute de manière asynchrone, définissez la valeur When sur Async et ajoutez current.update() à la fin du script. L’instance n’attend pas une réponse du fournisseur de service Web lors de l’envoi d’un message via la file d’attente ECC.

    Tableau 5. Paramètres
    Nom Type Description
    Aucun
    Tableau 6. Renvoie
    Type Description
    SOAPResponseV2 - Champ d’application, global Réponse renvoyée par le fournisseur SOAP.
    Remarque :
    Toute tentative d’utilisation de l’objet de réponse SOAP avant le traitement de la réponse peut entraîner une erreur de délai d’expiration.
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    var response = sm.executeAsync();

    SOAPMessageV2 : getEndpoint()

    Obtient le point de terminaison du message SOAP.

    Tableau 7. Paramètres
    Nom Type Description
    Aucun
    Tableau 8. Renvoie
    Type Description
    Chaîne URL du fournisseur de services Web SOAP.
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    var endpoint = sm.getEndpoint();

    SOAPMessageV2 : getRequestBody()

    Renvoie le contenu du corps du message SOAP.

    Remarque :
    Avant d’appeler la méthode getRequestBody(), vous devez appeler la méthode execute() pour obtenir l’objet de réponse.
    Tableau 9. Paramètres
    Nom Type Description
    Aucun
    Tableau 10. Renvoie
    Type Description
    Chaîne Corps du message SOAP.
    var sm = new sn_ws.SOAPMessageV2("StockQuote","StockQuoteSoap.GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    var response = sm.execute();
    var requestBody = response.getRequestBody();

    SOAPMessageV2 : getRequestHeader(String headerName)

    Obtient la valeur d’un en-tête HTTP spécifié par le client SOAP.

    Par défaut, cette méthode ne peut pas renvoyer la valeur d’un en-tête définie automatiquement par le système. Pour accorder à cette méthode l’accès à tous les en-têtes, définissez la propriété glide.http.log_debug sur true.

    Tableau 11. Paramètres
    Nom Type Description
    headerName Chaîne En-tête de demande pour lequel vous souhaitez obtenir la valeur.
    Tableau 12. Renvoie
    Type Description
    Chaîne Valeur de l’en-tête spécifié.
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    var header = sm.getRequestHeader("Accept");

    SOAPMessageV2 : getRequestHeaders()

    Obtient les en-têtes HTTP qui ont été définis par le client SOAP et les valeurs associées.

    Cette méthode ne renvoie pas les en-têtes définis automatiquement par le système. Pour configurer cette méthode afin qu’elle renvoie tous les en-têtes, définissez la propriété glide.http.log_debug sur true.

    Tableau 13. Paramètres
    Nom Type Description
    Aucun
    Tableau 14. Renvoie
    Type Description
    Objet Objet qui mappe le nom de chaque en-tête à la valeur associée.
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    var requestHeaders = sm.getRequestHeaders();

    SOAPMessageV2 : setBasicAuth(String userName, String userPass)

    Définit les en-têtes d’authentification de base pour le message SOAP.

    La définition d’en-têtes d’authentification de base à l’aide de cette méthode remplace les valeurs d’authentification de base définies dans l’enregistrement du message SOAP.

    Tableau 15. Paramètres
    Nom Type Description
    userName Chaîne Nom d’utilisateur à utiliser lors de l’authentification du message SOAP.
    UserPass Chaîne Mot de passe de l’utilisateur spécifié.
    Tableau 16. Renvoie
    Type Description
    nul
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    sm.setBasicAuth("username","password");

    SOAPMessageV2 - setEccCorrelator(corrélateur de chaîne)

    Associe les demandes sortantes et l’enregistrement de réponse qui en résulte dans la file d’attente ECC.

    Cette méthode s’applique uniquement aux messages SOAP envoyés via un Serveur MID. Le corrélateur fourni renseigne le champ Agent corrélatif de l’enregistrement de file d’attente ECC pour la réponse. Fournissez un corrélateur unique pour chaque demande sortante afin d’associer les résultats corrects dans la file d’attente ECC à la demande lors de la conception d’une automatisation asynchrone via un serveur MID.

    Tableau 17. Paramètres
    Nom Type Description
    corrélateur Chaîne Identificateur unique
    Tableau 18. Renvoie
    Type Description
    nul
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    sm.setEccCorrelator("unique_id");

    SOAPMessageV2 : setEccParameter(nom de chaîne, valeur de chaîne)

    Remplace une valeur de la base de données en écrivant dans la charge utile du message SOAP.

    Cette méthode ne s’applique qu’aux messages SOAP envoyés via un Serveur MIDfichier . Utilisez cette méthode lorsqu’une valeur du message SOAP dans la base de données n’est pas valide, par exemple lorsque l’URL du point de terminaison est plus longue que la longueur maximale du champ du point de terminaison SOAP .

    Il s’agit de valeurs valides pour le paramètre name.
    • source: l’URL du point de terminaison.
    • name: la fonction de message SOAP à exécuter.
    Tableau 19. Paramètres
    Nom Type Description
    nom Chaîne Nom du paramètre ECC.
    valide Chaîne Valeur à affecter au paramètre ECC spécifié.
    Tableau 20. Renvoie
    Type Description
    nul
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    sm.setEccParameter("source","http://very.long.endpoint");

    SOAPMessageV2 : setEndpoint(point de terminaison de chaîne)

    Définit le point de terminaison du message SOAP.

    Par défaut, le message SOAP utilise le point de terminaison spécifié dans l’enregistrement du message SOAP. Utilisez cette méthode pour remplacer la valeur par défaut. Vous devez appeler cette méthode lorsque vous utilisez le constructeur SOAPMessageV2() sans paramètres.

    Tableau 21. Paramètres
    Nom Type Description
    endpoint Chaîne URL du fournisseur de service Web SOAP avec lequel vous souhaitez créer l’interface.
    Tableau 22. Renvoie
    Type Description
    nul
    var sm = new sn_ws.SOAPMessageV2();
    sm.setEndpoint("http://web.service.endpoint");

    SOAPMessageV2 : setHttpTimeout(Number timeoutMs)

    Définit la durée pendant laquelle le message SOAP attend une réponse du fournisseur de services Web avant que la demande n’expire.

    Tableau 23. Paramètres
    Nom Type Description
    délai d’expirationMs Numéro Durée d’attente d’une réponse du fournisseur de services Web, en millisecondes.
    Tableau 24. Renvoie
    Type Description
    nul
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    sm.setHttpTimeout(6000);

    SOAPMessageV2 : setLogLevel(niveau de chaîne)

    Définit le niveau de journalisation de ce message et de la réponse correspondante.

    La définition d’un niveau de journal à l’aide de l’API SOAPMessageV2 remplace le niveau de journal configuré sur l’enregistrement de message SOAP. Ce niveau de journal peut ne pas s’appliquer si le domaine du point de terminaison est exclu ou si la propriété glide.outbound_http_log.override est définie sur vrai. Pour afficher les journaux de service Web sortants, accédez à Journaux Système > Demandes HTTP sortantes.

    Tableau 25. Paramètres
    Nom Type Description
    niveau Chaîne Niveau de journal. Les valeurs valides sont basique, élevé et tout.
    Tableau 26. Renvoie
    Type Description
    nul

    SOAPMessageV2 - setMIDServer(String midServerName)

    Configure le message SOAP à envoyer via un MID Server.

    Par défaut, le message SOAP utilise ce qui Serveur MID est spécifié dans l’enregistrement de la fonction de message SOAP. Utilisez cette méthode pour remplacer la valeur par défaut.

    Tableau 27. Paramètres
    Nom Type Description
    Nom du Serveur MID Chaîne Nom de l’utilisateur par lequel Serveur MID vous souhaitez envoyer le message SOAP. Votre instance doit avoir un actif Serveur MID portant le nom spécifié.
    Tableau 28. Renvoie
    Type Description
    nul

    SOAPMessageV2 : setMutualAuth(String profileName)

    Définit le profil de protocole d’authentification réciproque pour le message SOAP.

    La définition d’un profil de protocole à l’aide de cette méthode remplace le profil de protocole sélectionné pour l’enregistrement de message SOAP.

    Tableau 29. Paramètres
    Nom Type Description
    profileName Chaîne Nom du profil de protocole à utiliser pour l’authentification réciproque.
    Tableau 30. Renvoie
    Type Description
    nul
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    sm.setMutualAuth("auth_profile_name");

    SOAPMessageV2 : setRequestBody(String requestBody)

    Définit le contenu du corps à envoyer au fournisseur de services Web.

    Lorsque vous définissez le contenu du corps à l’aide de cette méthode, les variables du corps ne sont pas substituées aux paramètres de l’enregistrement de la fonction de message SOAP. Vous devez définir explicitement toutes les valeurs dans le corps du message SOAP.

    Tableau 31. Paramètres
    Nom Type Description
    requestbody Chaîne Corps du message SOAP.
    Tableau 32. Renvoie
    Type Description
    nul
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    var body = "<SOAP message body>";
    sm.setRequestBody(body);

    SOAPMessageV2 : setRequestHeader(String headerName, String headerValue)

    Définit un en-tête HTTP dans le message SOAP sur la valeur spécifiée.

    Tableau 33. Paramètres
    Nom Type Description
    headerName Chaîne Nom de l’en-tête.
    headerValue Chaîne Valeur à affecter à l’en-tête spécifié.
    Tableau 34. Renvoie
    Type Description
    nul
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    sm.setRequestHeader("Accept","Application/json");

    SOAPMessageV2 - setSOAPAction(String soapAction)

    Définit l’action SOAP exécutée par ce message SOAP.

    Le WSDL de votre fournisseur de services Web répertorie les actions SOAP que vous pouvez effectuer. Vous devez appeler cette méthode lorsque vous utilisez le constructeur SOAPMessageV2() sans paramètres.

    Tableau 35. Paramètres
    Nom Type Description
    soapAction (en anglais seulement) Chaîne Action SOAP exécutée par ce message SOAP.
    Tableau 36. Renvoie
    Type Description
    nul
    var sm = new sn_ws.SOAPMessageV2();
    sm.setSOAPAction("GetQuote");
    //construct SOAP message by specifying endpoint and auth
    sm.execute();

    SOAPMessageV2 : setStringParameter(nom de chaîne, valeur de chaîne)

    Définit une variable portant le nom spécifié à partir de l’enregistrement du message SOAP sur la valeur spécifiée.

    Les caractères XML réservés dans la valeur sont convertis en caractères d’échappement équivalents.

    Tableau 37. Paramètres
    Nom Type Description
    nom Chaîne Nom de la variable du message SOAP.
    valide Chaîne Valeur à affecter à la variable spécifiée.
    Tableau 38. Renvoie
    Type Description
    nul
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    sm.setStringParameter("symbol","NOW");

    SOAPMessageV2 : setStringParameterNoEscape(nom de la chaîne, valeur de la chaîne)

    Définit une variable portant le nom spécifié à partir de l’enregistrement du message SOAP sur la valeur spécifiée.

    Cette méthode est équivalente à setStringParameter mais n’échappe pas les caractères réservés XML.

    Tableau 39. Paramètres
    Nom Type Description
    nom Chaîne Nom de la variable du message SOAP.
    valide Chaîne Valeur à affecter à la variable spécifiée.
    Tableau 40. Renvoie
    Type Description
    nul
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    sm.setStringParameterNoEscape("symbol","NOW");

    SOAPMessageV2 : setWSSecurity(String keystoreId, String keystoreAlias, String keystorePassword, String certificateId)

    Définit les valeurs de sécurité du service Web pour le message SOAP.

    La définition des valeurs de sécurité à l’aide de cette méthode remplace les valeurs de sécurité du service Web définies pour l’enregistrement de message SOAP.

    Tableau 41. Paramètres
    Nom Type Description
    keystoreId Chaîne Sys_id du magasin de clés Java ou PKCS12 à utiliser.
    keystoreAlias Chaîne Alias qui identifie les clés publique et privée.
    keystorePassword Chaîne Mot de passe affecté à l’enregistrement de magasin de clés.
    ID certificat Chaîne Sys_id du certificat de serveur approuvé.
    Tableau 42. Renvoie
    Type Description
    nul
    var sm = new sn_ws.SOAPMessageV2("StockQuote","GetQuote"); //Might throw exception if message doesn't exist or not visible due to scope.
    sm.setWSSecurity("70d65e074f3812001f6eac118110c71a","Quote keys","UXr82cqX75Z7MaSa+EyjGA==","ba969a074f3812001f6eac118110c76d");