Web services SOAP


UseRestInsteadOfSoap

Note : Les web services SOAP Service Manager ne sont plus maintenus depuis la version Oxygène. Vous pouvez toujours les utiliser mais nous vous conseillons d'utiliser l'API REST Service Manager pour profiter des dernières améliorations et fonctionnalités.

Definition

Un web service est un composant informatique permettant, sans intervention humaine, la communication et l'échange de données entre applications et systèmes hétérogènes sur internet ou sur un intranet via le protocole d'échange SOAP WSDL.

EndDefinition

Principe de fonctionnement

  • Un consommateur effectue une demande a un fournisseur de web services, via une requête.
  • Le web service SOAP exécute la requête puis renvoie une réponse au consommateur.
  • Le consommateur utilise la réponse dans le cadre d'une application tierce qu'il a développée.

Service Manager fournisseur et consommateur de web services SOAP

Service Manager comme fournisseur de web services SOAP

  • Service Manager fournit des web services SOAP. Il s'agit de fonctionnalités métier au périmètre bien délimité  - Open url.png voir  Liste des web services

    exemple  Composant de création ou de suspension d'un incident dans Service Manager

  • L'application tierce appelle un web service SOAP Service Manager en passant les valeurs attendues par les paramètres de celui-ci. Le traitement s'effectue alors comme si Service Manager était actif.

    exemple  Une application de Service Desk appelle le web service SOAP Suspendre un ticket en passant le numéro d'incident Service Manager

Service Manager comme consommateur de web services SOAP

  • Service Manager peut appeler des web services SOAP fournis par d'autres produits.

    exemple  Appel d'un composant externe de réinitialisation des mots de passe

 Open url.png  voir Exemples de web services SOAP

Remarques

  • Le développement de la partie consommatrice est à la charge du consommateur et doit respecter le WSDL Service Manager accessible à l'adresse http://{easyvista_path}/WebService/SmoBridge.php.
    • {easyvista_path} = votre répertoire EasyVista sur le serveur Apache
    • Attention : L'adresse est sensible à la casse.
       
  • Règles de nommage des web services SOAP Service Manager :
    • EZV_(nom de la fonction métier)
    • S'il s'agit d'une fonction système : EZV_SYS_(nom de la fonction)
       
  • Propriétés des web services SOAP Service Manager :
    • Les paramètres sont sensibles à la casse : respectez impérativement les lettres majuscules et les lettres minuscules.
    • Le type de valeur attendue par le paramètre est indiquée dans le fichier SmoBridge.php.

      exemple  Login: xsd:string

    • Lorsque plusieurs paramètres concernent une même information, un algorithme de recherche traite les paramètres un par un et dans un ordre précis jusqu'à ce que l'enregistrement correspondant soit trouvé ; si l'enregistrement n'est pas trouvé, une erreur est retournée et le traitement par le web service SOAP est stoppé. Dans les tableaux descriptifs des web services SOAP, les paramètres concernés par cet algorithme sont regroupés et mentionnés dans l'ordre de recherche.

      exemple  Group_ID - Group_Mail - Groupe_Name

    • La gestion des erreurs se fait via des codes retour.

      exemple -1 = base Service Manager non trouvée

Bonnes pratiques

  • Pour éviter toute erreur lors de la saisie des paramètres, faites un copier-coller à partir du fichier descriptif SmoBridge.php.
  • Lorsque vous utilisez un web service SOAP utilisant une structure XML, reportez-vous au modèle de données Service Manager pour codifier le nom des champs et éviter toute erreur de syntaxe.
  • Paramètres de type Date : respectez le format de date utilisé dans le pays de l'utilisateur connecté à l'application.
  • Paramètres de type Libellé : saisissez les libellés définis dans la langue de l'utilisateur connecté à l'application.

Système de licence

Accès aux web services SOAP Service Manager

  • L’accès aux web services SOAP Service Manager se fait via un bridge réalisé en PHP.

Principe de fonctionnement d'un bridge

Un bridge permet d'exposer à l’extérieur uniquement un serveur web (une simple page PHP), et non un exécutable demandant l'accès aux bases de données.

  • Le bridge reçoit un appel SOAP d'un consommateur.
  • Il convertit l'appel en un appel SMOServer (serveur applicatif) natif.
  • Il récupère la réponse du serveur applicatif, qu'il convertit en un message SOAP.
  • Il renvoie le message SOAP au consommateur.

Fichier WebService_Config.php

Ce fichier permet de paramétrer le bridge et d'indiquer le SmoServer (serveur applicatif) à appeler.

  • Emplacement : http://{easyvista_path}/Config/webservice_config.php
    • {easyvista_path} = votre répertoire EasyVista sur le serveur Apache
    • Attention : L'adresse est sensible à la casse.

Paramètres obligatoires

Paramètre Description
SMO_BROKER_PORT_ID Port du SMOBroker
SMO_BROKER_ADDRESS Adresse IP du SMOBroker

Paramètres optionnels

Paramètre Description
SMO_SERVER_PORT_ID Port du SMOServer
SMO_SERVER_ADDRESS Adresse IP du SMOServer.
  • Si l'adresse n'est pas renseignée, le broker renvoie une adresse IP valide de SmoServer, conformément à l'algorithme de balance de charge (loadBalancing).
SmoWebService Namespace partiel défini dans le WSDL
Namespace Namespace identifiant le service

Exemple

<?
define( "SMO_BROKER_PORT_ID" , 49358 );
define( "SMO_BROKER_ADDRESS" , '127.0.0.1' );
define( "SMO_SERVER_PORT_ID" , 49359 );
define( "SMO_SERVER_ADDRESS" , "127.0.0.1" );
define( "SmoWebService" , "SmoWebService" );
define( "Namespace" , "http:~/~/localhost/" . SmoWebService );
define( "CONST_WSDL" , "http:~/~/localhost/WebService/SmoBridge.php?wsdl" );
define( "CONST_DEBUG_MODE" , false );
define( "CONST_LOG_FILENAME" , "C:\www\EVO_WS\WsLog.txt" );
define( "CONST_DELPHI_WSDL" , "http:~/~/localhost/WebService/wsdl/IDelphiSmoWebService" );
?>

Fichier SmoBridge.php

Ce fichier contient le code nécessaire à l'interfaçage SOAP / SmoServer et toutes les spécifications relatives à l’utilisation des web services SOAP.

  • Emplacement : http://{easyvista_path}/WebService/SmoBridge.php
  • Le détail d'un web service permet de visualiser tous les paramètres que doit fournir l’application consommatrice pour pouvoir utiliser le service.
             Open url.png  voir Exemple

Liste des web services SOAP Service Manager

Matériels

Employés

Tickets

Note : Le terme Tickets englobe les incidents / demandes (service, changement, investissement) / problèmes / événements.

Actions

Autres

Tags:
Modifié par Utilisateur inconnu le 2021/09/20 19:25
Créé par Administrator XWiki le 2013/03/14 16:23

Raccourcis

L'actualité mensuelle
•  Newsletter

Tous les changements
•  Service Manager
•  Service Apps
•  Self Help
•  Service Bots

Powered by XWiki ©, EasyVista 2021