SlideShare une entreprise Scribd logo
1  sur  23
SOAP, WSDL ET UDDI




  Réalisé: TRABELSI. L
PLAN
   SOAP
   WSDL
   UDDI
SOAP

   Simple Object Access Protocol: SOAP permet une
    normalisation des échanges de données. Les
    données sont encodées en XML et échangées par
    des appels de procédures à distance (RPC) en
    utilisant HTTP/SMPT/POP comme protocole de
    communication.
   Standard W3C
   Simple, extensible et permet le diagnostic des
    erreurs
   Fonctionne de manière synchrone et asynchrone.
   Indépendant de la plate-forme et du langage
Structure du message SOAP
   Envelope
       Contenant d’un message,
                                                       SOAP
       Élément racine XML,
        Schéma XML                                     ENVELOPPE
                                                       SOAP HEADER
           http://www.w3.org/2002/06/soap-envelope/
   Header (optionnel)
                                                          HEADER ENTRY
       Entrées non applicatives,
       Ex : Numéros de session.
   Body (obligatoire)                                   SOAP BODY
       Entrées applicatives,
                                                       SOAP ENVELOPE
       Ex : nom des procédures,
        nom des paramètres,
        valeurs de paramètres,                             BODY ENTRY
       Retour d’erreurs.
Structure du message SOAP
   L’enveloppe: Élément obligatoire dans un message SOAP
   Il permet de spécifier la version de SOAP utilisée, en utilisant un
    espace de nom http://www.w3.org/2003/05/soap-envelope
   Il permet aussi de spécifier les règles d’encodage (sérialisation et
    désérialisation) mises en oeuvre dans le message
    (encodingStyle)

     <?xml version="1.0"?>
      <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-
     envelope"
          soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
        <soap:Body>
       ---------------------------!!Contenu de la requête!!---------------------------------
        </soap:Body>
      </soap:Envelope>
Structure du message SOAP

   L’Entête : Élément optionnel
   Il contient des éléments spécifiques à
    l’application
   Il peut contenir trois types d’éléments:
     Actor:  Permet de préciser le destinataire final du
      message (message path)
     MustUnderstand (0,1): Spécifie que le récepteur
      du message doit obligatoirement comprendre cet
      élément. Si ce n’est pas le cas, le récepteur arrête
      tout traitement
     Encodingstyle: Même définition que pour
Structure du message SOAP
   Le corps: obligatoire Contient les données (
    paramètres) utilisées pour un appel de
    procédure distante effectué par le destinataire
    final. Ce ne sont pas des éléments SOAP, mais
    des éléments spécifiques à l’application.
Requête SOAP

 <?xml version="1.0?>
   <soap:Envelope
<?xml version="1.0?>
   xmlns:soap=http://www.w3.org/2001/12/soap-envelope
        <soap:Envelope xmlns:soap=http://www.w3.org/2001/12/soap-
   soap:encodingStyle="http://www.w3.org/2001/12/soap-
envelope
   encoding">
        soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

        <soap:Body>
               <soap:Body>
                        <m:GetPrice
                <m:GetPrice
                         xmlns:m="http://www.leaderprice.com/prices" >
                  xmlns:m="http://www.leaderprice.com/prices" >
                        <m:Item>Apples</m:Item>
                <m:Item>Apples</m:Item>
                        </m:GetPrice>
                </m:GetPrice>
                </soap:Body>
       </soap:Envelope>
        </soap:Body>
   </soap:Envelope>
Réponse SOAP

<?xml version="1.0"?>
   <soap:Envelope
<?xml version="1.0"?>
   xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
        <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-
   soap:encodingStyle="http://www.w3.org/2001/12/soap-
envelope"
   encoding">
        soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

              <soap:Body>
        <soap:Body>
                      <m:GetPriceResponse
              <m:GetPriceResponse
                       xmlns:m="http://www.leaderprice.com/prices" >
                        <m:Price>1.90</m:Price>
  xmlns:m="http://www.leaderprice.com/prices" >
                      </m:GetPriceResponse>
              <m:Price>1.90</m:Price>
              </soap:Body>
      </soap:Envelope>
              </m:GetPriceResponse>
      </soap:Body>
  </soap:Envelope>
Retour d’erreur
   Les descripteurs d’erreurs
   Faultcode: identifier l’erreur
     Version Mismatch: Le namespace donné ne permet pas
      de valider le message
     MustUnderstand : L’élément de l’entête n’a pas été
      compris
     Client: Le message n’a pas été correctement formé ou il
      manque certaines informations.
     Server: Serveur non accessible ou erreur de décodage
      du message.
   FaultString: Permet de préciser la nature de l’erreur.
   FaultActor: Information sur la localisation de l’erreur.
   Detail: Erreur spécifique à l’application liée aux
    données présentes dans le corps du message.
Transport de messages SOAP

   HTTP (HyperText Transfer Protocol)
       Protocole bidirectionnel synchrone : requête/réponse
       Transfert de fichiers (habituellement HTML)
       Requête méthode GET/méthode POST
       Simple et disponible sur toute plate-forme

                  POST www.loria.fr/script HTTP/1.1
                  accept: text/html
                  accept: image/gif
                  content-type:
                  application/x-www-form-urlencoded
Client            parametre1=valeur1&                     Serveur
HTTP              parametre2=valeur2
                                                           HTTP
                  HTTP/1.0 200 OK
                  content-type: text/html
                  <HTML><HEAD><TITLE>LORIA …
Exemple retour d’erreur


   <env:Body>
           <env:Fault>
            <faultcode>env:VersionMismatch>
            </faultcode>
            <faultstring>Version Mismatch</faultstring>
            </env:Fault>
     </env:Body>
Liaison SOAP/HTTP
GET /Leaderprice HTTP/1.1
  SOAP utilise le mode POST de HTTP
Host: www.leaderpriceserver.com
  Requête SOAP/HTTP                                                     HTTP
Content-Type: text/xml; charset= " ISO-8859-1"
       Ajout du champs "action"
Content-Length: nnnn
Action: "  Acheminement et Filtrage par les serveurs HTTP
          www.leaderprice.com/prices"                                   Message
                                                                         SOAP
     Content-Type: application/soap+xml
 <env:Envelope xmlns:env="http://www.w3.org/2002/06/soap-envelope/"
     Message SOAP
      env:encodingStyle=" http://www.w3.org/2002/06/soap-encoding/"/>
    Réponse SOAP/HTTP
       Content-Type: application/soap+xml
      Etat 2xx
      <env:Body>
            Requête SOAP reçue et traitée avec succès,
                  <m:GetPrice xmlns:m="www.leaderprice.com/prices">
            Message SOAP envoyée contient la réponse
                           <m:Item>Apples</m:Item>
             ou rien (one-way model).
                  </m:GetPrice>
       Etat 500
      </env:Body>
        Requête SOAP échouée,
        Envoi d’un message SOAP        contenant le retour d’erreur.
 </env:Envelope>
Réponse SOAP/HTTP
HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=" ISO-8859-1"
Content-Length: nnnn

 <env:Envelope xmlns:env="http://www.w3.org/2002/06/soap-envelope/"
     env:encodingStyle=" http://www.w3.org/2002/06/soap-encoding/"/>
      <env:Body>
               <m:GetPriceResponse
      xmlns:m="www.leaderprice.com/prices">
                         <Price>1.90</Price>
               </m:GetPriceResponse>
       </env:Body>
 </env:Envelope>
Réponse SOAP/HTTP (erreur)
HTTP/1.1 500 Internal Server Error
Content-Type: application/soap+xml; charset=" ISO-8859-1"
Content-Length: nnnn

 <env:Envelope xmlns:env="http://www.w3.org/2002/06/soap-envelope/"
     env:encodingStyle=" http://www.w3.org/2002/06/soap-encoding/"/>
      <env:Body>
          <env:Fault>
            <faultcode>SOAP-ENV:MustUnderstand</faultcode>
            <faultstring>SOAP Must Understand Error</faultstring>
          </env:Fault>
       </env:Body>
 </env:Envelope>
WSDL

   Web Services Description Language : Une
    description en XML des services web.
   Il décrit de manière abstraite et indépendante
    du langage de programmation, l’ensemble des
    fonctionnalités offertes par un service. Il
    permet de connaître les protocoles, les
    serveurs, les ports, le format des messages,
    les entrées, les sorties, les exceptions
    possibles et les opérations réalisées par un
    service web.
Structure du message WSDL
UDDI
   Universal Description, Discovery and Integration
   Standard de l’ « Organization for the Advancement oF
    Structured Information Standard » (avril 2003)
   UDDI permet aux fournisseurs de services de s’inscrire et de
    répertorier les services qu’ils proposent.
   UDDI ne contient que des références associées à des
    services, et non les services eux-mêmes
   Il peut être public ou privé
       Les annuaires publics sont hébergés par des sociétés comme
        IBM ou Microsoft.
       Les annuaires publics sont moins développés que les annuaires
        privés parce qu’ils ne sont pas suffisamment sécurisés.
       Les annuaires privés peuvent être hébergés par une société
        quelconque sur un réseau privé ou sur internet.
UDDI
   L’annuaire UDDI est composé de:
     Pages   blanches: Contiennent des informations
      sur l’entreprise comme le nom de la société,
      l’adresse
     Pages jaunes: Contiennent la description des
      services web, au format WSDL, déployés par
      l’entreprise.
     Pages vertes : Contiennent les informations
      techniques détaillées sur les services fournis
      (processus métier, description de service….)
UDDI
   Pages blanches ou businessEntity:
     Décrites  sous la forme d’un schéma XML.
     Elles contiennent les éléments relatifs à
      l’entreprise qui propose le service (nom,
      coordonnées, secteur d’activité, l’adresse du site
      web…)
UDDI
   Pages jaunes ou ServiceEntity:
     Décrites aussi sous la forme d’un schéma XML
     C’est un ensemble de services proposés
      répondant à un besoin métier spécifique
     Contiennent aussi la description des services web
      proposés par ce dernier (nom du service,
      description, code…)
     Une entreprise peut avoir plusieurs métiers et
      donc plusieurs businessService.
UDDI

pages vertes:
  Contiennent les informations techniques sur
  un service web.
  Contiennent aussi les références aux tmodels
  (spécification des interfaces des services web)
Bibliographie
   Introduction aux Web Services (2010),
    Rahee Ghurbhurn, Ecole Nationale Supérieure
    de Mines,
   WSDL : Décrire et configurer (2010), Mickaël
    BARON.

Contenu connexe

Tendances

comment realiser un Service Web
comment realiser un Service Web comment realiser un Service Web
comment realiser un Service Web
Nazih Heni
 
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
ENSET, Université Hassan II Casablanca
 

Tendances (20)

Support JEE Servlet Jsp MVC M.Youssfi
Support JEE Servlet Jsp MVC M.YoussfiSupport JEE Servlet Jsp MVC M.Youssfi
Support JEE Servlet Jsp MVC M.Youssfi
 
Ter Web Service Intro
Ter Web Service IntroTer Web Service Intro
Ter Web Service Intro
 
Soap
SoapSoap
Soap
 
Tp2 - WS avec JAXRS
Tp2 - WS avec JAXRSTp2 - WS avec JAXRS
Tp2 - WS avec JAXRS
 
Présentation SOA
Présentation SOAPrésentation SOA
Présentation SOA
 
Presentation SOAP
 Presentation SOAP Presentation SOAP
Presentation SOAP
 
Chp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOAChp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOA
 
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
 
Support Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFISupport Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFI
 
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfiJava entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfi
 
WEB SERVICE SOAP, JAVA, XML, JAXWS
WEB SERVICE SOAP, JAVA, XML, JAXWSWEB SERVICE SOAP, JAVA, XML, JAXWS
WEB SERVICE SOAP, JAVA, XML, JAXWS
 
Chp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesChp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées Services
 
7 rest
7 rest7 rest
7 rest
 
OpenESB et BPEL
OpenESB et BPELOpenESB et BPEL
OpenESB et BPEL
 
Appalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSPAppalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSP
 
Support de cours angular
Support de cours angularSupport de cours angular
Support de cours angular
 
comment realiser un Service Web
comment realiser un Service Web comment realiser un Service Web
comment realiser un Service Web
 
eServices-Tp2: bpel
eServices-Tp2: bpeleServices-Tp2: bpel
eServices-Tp2: bpel
 
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
 
Struts
StrutsStruts
Struts
 

Similaire à Soap, wsdl et uddi

Presentation
PresentationPresentation
Presentation
bois
 
BordeauxJUG : Portails &amp; Portlets Java
BordeauxJUG : Portails &amp; Portlets JavaBordeauxJUG : Portails &amp; Portlets Java
BordeauxJUG : Portails &amp; Portlets Java
Camblor Frédéric
 
Programmation_JEE_Version_imprimable.pdf
Programmation_JEE_Version_imprimable.pdfProgrammation_JEE_Version_imprimable.pdf
Programmation_JEE_Version_imprimable.pdf
ngombeemmanuel
 
Introduction à la sécurité des WebServices
Introduction à la sécurité des WebServicesIntroduction à la sécurité des WebServices
Introduction à la sécurité des WebServices
ConFoo
 
Cours services web_fabrice_mourlin
Cours services web_fabrice_mourlinCours services web_fabrice_mourlin
Cours services web_fabrice_mourlin
angeeLee
 
2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services
Camus LANMADOUCELO
 
Tp soa avec talend esb
Tp soa avec talend esbTp soa avec talend esb
Tp soa avec talend esb
Alahyane Ahmed
 
Dotnet j2 ee
Dotnet j2 eeDotnet j2 ee
Dotnet j2 ee
chdalel
 
NodeJS for Mobile App
NodeJS for Mobile AppNodeJS for Mobile App
NodeJS for Mobile App
Habib MAALEM
 

Similaire à Soap, wsdl et uddi (20)

03_-_SOA_-_SOAP.pdf
03_-_SOA_-_SOAP.pdf03_-_SOA_-_SOAP.pdf
03_-_SOA_-_SOAP.pdf
 
Presentation
PresentationPresentation
Presentation
 
Soap
SoapSoap
Soap
 
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnsoapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
 
WebServices.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
WebServices.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbWebServices.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
WebServices.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
 
.NET DotNet CF - 3
.NET DotNet CF - 3.NET DotNet CF - 3
.NET DotNet CF - 3
 
BordeauxJUG : Portails &amp; Portlets Java
BordeauxJUG : Portails &amp; Portlets JavaBordeauxJUG : Portails &amp; Portlets Java
BordeauxJUG : Portails &amp; Portlets Java
 
Programmation_JEE_Version_imprimable.pdf
Programmation_JEE_Version_imprimable.pdfProgrammation_JEE_Version_imprimable.pdf
Programmation_JEE_Version_imprimable.pdf
 
Soap
SoapSoap
Soap
 
Introduction à la sécurité des WebServices
Introduction à la sécurité des WebServicesIntroduction à la sécurité des WebServices
Introduction à la sécurité des WebServices
 
Cours services web_fabrice_mourlin
Cours services web_fabrice_mourlinCours services web_fabrice_mourlin
Cours services web_fabrice_mourlin
 
eServices-Tp3: esb
eServices-Tp3: esbeServices-Tp3: esb
eServices-Tp3: esb
 
2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services
 
Création de Services et Configuration du ESB avec TalendESB
Création de Services et Configuration du ESB avec TalendESBCréation de Services et Configuration du ESB avec TalendESB
Création de Services et Configuration du ESB avec TalendESB
 
Tp soa avec talend esb
Tp soa avec talend esbTp soa avec talend esb
Tp soa avec talend esb
 
Dotnet j2 ee
Dotnet j2 eeDotnet j2 ee
Dotnet j2 ee
 
Les Servlets et JSP
Les Servlets et JSPLes Servlets et JSP
Les Servlets et JSP
 
Resource Oriented Architecture
Resource Oriented ArchitectureResource Oriented Architecture
Resource Oriented Architecture
 
xml-webservices-intro.pdfhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
xml-webservices-intro.pdfhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhxml-webservices-intro.pdfhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
xml-webservices-intro.pdfhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
 
NodeJS for Mobile App
NodeJS for Mobile AppNodeJS for Mobile App
NodeJS for Mobile App
 

Soap, wsdl et uddi

  • 1. SOAP, WSDL ET UDDI Réalisé: TRABELSI. L
  • 2. PLAN  SOAP  WSDL  UDDI
  • 3. SOAP  Simple Object Access Protocol: SOAP permet une normalisation des échanges de données. Les données sont encodées en XML et échangées par des appels de procédures à distance (RPC) en utilisant HTTP/SMPT/POP comme protocole de communication.  Standard W3C  Simple, extensible et permet le diagnostic des erreurs  Fonctionne de manière synchrone et asynchrone.  Indépendant de la plate-forme et du langage
  • 4. Structure du message SOAP  Envelope  Contenant d’un message, SOAP  Élément racine XML, Schéma XML ENVELOPPE  SOAP HEADER  http://www.w3.org/2002/06/soap-envelope/  Header (optionnel) HEADER ENTRY  Entrées non applicatives,  Ex : Numéros de session.  Body (obligatoire) SOAP BODY  Entrées applicatives, SOAP ENVELOPE  Ex : nom des procédures, nom des paramètres, valeurs de paramètres, BODY ENTRY  Retour d’erreurs.
  • 5. Structure du message SOAP  L’enveloppe: Élément obligatoire dans un message SOAP  Il permet de spécifier la version de SOAP utilisée, en utilisant un espace de nom http://www.w3.org/2003/05/soap-envelope  Il permet aussi de spécifier les règles d’encodage (sérialisation et désérialisation) mises en oeuvre dans le message (encodingStyle) <?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap- envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Body> ---------------------------!!Contenu de la requête!!--------------------------------- </soap:Body> </soap:Envelope>
  • 6. Structure du message SOAP  L’Entête : Élément optionnel  Il contient des éléments spécifiques à l’application  Il peut contenir trois types d’éléments:  Actor: Permet de préciser le destinataire final du message (message path)  MustUnderstand (0,1): Spécifie que le récepteur du message doit obligatoirement comprendre cet élément. Si ce n’est pas le cas, le récepteur arrête tout traitement  Encodingstyle: Même définition que pour
  • 7. Structure du message SOAP  Le corps: obligatoire Contient les données ( paramètres) utilisées pour un appel de procédure distante effectué par le destinataire final. Ce ne sont pas des éléments SOAP, mais des éléments spécifiques à l’application.
  • 8. Requête SOAP <?xml version="1.0?> <soap:Envelope <?xml version="1.0?> xmlns:soap=http://www.w3.org/2001/12/soap-envelope <soap:Envelope xmlns:soap=http://www.w3.org/2001/12/soap- soap:encodingStyle="http://www.w3.org/2001/12/soap- envelope encoding"> soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Body> <soap:Body> <m:GetPrice <m:GetPrice xmlns:m="http://www.leaderprice.com/prices" > xmlns:m="http://www.leaderprice.com/prices" > <m:Item>Apples</m:Item> <m:Item>Apples</m:Item> </m:GetPrice> </m:GetPrice> </soap:Body> </soap:Envelope> </soap:Body> </soap:Envelope>
  • 9. Réponse SOAP <?xml version="1.0"?> <soap:Envelope <?xml version="1.0"?> xmlns:soap="http://www.w3.org/2001/12/soap-envelope" <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap- soap:encodingStyle="http://www.w3.org/2001/12/soap- envelope" encoding"> soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Body> <soap:Body> <m:GetPriceResponse <m:GetPriceResponse xmlns:m="http://www.leaderprice.com/prices" > <m:Price>1.90</m:Price> xmlns:m="http://www.leaderprice.com/prices" > </m:GetPriceResponse> <m:Price>1.90</m:Price> </soap:Body> </soap:Envelope> </m:GetPriceResponse> </soap:Body> </soap:Envelope>
  • 10. Retour d’erreur  Les descripteurs d’erreurs  Faultcode: identifier l’erreur  Version Mismatch: Le namespace donné ne permet pas de valider le message  MustUnderstand : L’élément de l’entête n’a pas été compris  Client: Le message n’a pas été correctement formé ou il manque certaines informations.  Server: Serveur non accessible ou erreur de décodage du message.  FaultString: Permet de préciser la nature de l’erreur.  FaultActor: Information sur la localisation de l’erreur.  Detail: Erreur spécifique à l’application liée aux données présentes dans le corps du message.
  • 11. Transport de messages SOAP  HTTP (HyperText Transfer Protocol)  Protocole bidirectionnel synchrone : requête/réponse  Transfert de fichiers (habituellement HTML)  Requête méthode GET/méthode POST  Simple et disponible sur toute plate-forme POST www.loria.fr/script HTTP/1.1 accept: text/html accept: image/gif content-type: application/x-www-form-urlencoded Client parametre1=valeur1& Serveur HTTP parametre2=valeur2 HTTP HTTP/1.0 200 OK content-type: text/html <HTML><HEAD><TITLE>LORIA …
  • 12. Exemple retour d’erreur <env:Body> <env:Fault> <faultcode>env:VersionMismatch> </faultcode> <faultstring>Version Mismatch</faultstring> </env:Fault> </env:Body>
  • 13. Liaison SOAP/HTTP GET /Leaderprice HTTP/1.1  SOAP utilise le mode POST de HTTP Host: www.leaderpriceserver.com  Requête SOAP/HTTP HTTP Content-Type: text/xml; charset= " ISO-8859-1"  Ajout du champs "action" Content-Length: nnnn Action: "  Acheminement et Filtrage par les serveurs HTTP www.leaderprice.com/prices" Message SOAP Content-Type: application/soap+xml <env:Envelope xmlns:env="http://www.w3.org/2002/06/soap-envelope/"  Message SOAP env:encodingStyle=" http://www.w3.org/2002/06/soap-encoding/"/>  Réponse SOAP/HTTP  Content-Type: application/soap+xml  Etat 2xx <env:Body>  Requête SOAP reçue et traitée avec succès, <m:GetPrice xmlns:m="www.leaderprice.com/prices">  Message SOAP envoyée contient la réponse <m:Item>Apples</m:Item> ou rien (one-way model). </m:GetPrice> Etat 500  </env:Body>  Requête SOAP échouée,  Envoi d’un message SOAP contenant le retour d’erreur. </env:Envelope>
  • 14. Réponse SOAP/HTTP HTTP/1.1 200 OK Content-Type: application/soap+xml; charset=" ISO-8859-1" Content-Length: nnnn <env:Envelope xmlns:env="http://www.w3.org/2002/06/soap-envelope/" env:encodingStyle=" http://www.w3.org/2002/06/soap-encoding/"/> <env:Body> <m:GetPriceResponse xmlns:m="www.leaderprice.com/prices"> <Price>1.90</Price> </m:GetPriceResponse> </env:Body> </env:Envelope>
  • 15. Réponse SOAP/HTTP (erreur) HTTP/1.1 500 Internal Server Error Content-Type: application/soap+xml; charset=" ISO-8859-1" Content-Length: nnnn <env:Envelope xmlns:env="http://www.w3.org/2002/06/soap-envelope/" env:encodingStyle=" http://www.w3.org/2002/06/soap-encoding/"/> <env:Body> <env:Fault> <faultcode>SOAP-ENV:MustUnderstand</faultcode> <faultstring>SOAP Must Understand Error</faultstring> </env:Fault> </env:Body> </env:Envelope>
  • 16. WSDL  Web Services Description Language : Une description en XML des services web.  Il décrit de manière abstraite et indépendante du langage de programmation, l’ensemble des fonctionnalités offertes par un service. Il permet de connaître les protocoles, les serveurs, les ports, le format des messages, les entrées, les sorties, les exceptions possibles et les opérations réalisées par un service web.
  • 18. UDDI  Universal Description, Discovery and Integration  Standard de l’ « Organization for the Advancement oF Structured Information Standard » (avril 2003)  UDDI permet aux fournisseurs de services de s’inscrire et de répertorier les services qu’ils proposent.  UDDI ne contient que des références associées à des services, et non les services eux-mêmes  Il peut être public ou privé  Les annuaires publics sont hébergés par des sociétés comme IBM ou Microsoft.  Les annuaires publics sont moins développés que les annuaires privés parce qu’ils ne sont pas suffisamment sécurisés.  Les annuaires privés peuvent être hébergés par une société quelconque sur un réseau privé ou sur internet.
  • 19. UDDI  L’annuaire UDDI est composé de:  Pages blanches: Contiennent des informations sur l’entreprise comme le nom de la société, l’adresse  Pages jaunes: Contiennent la description des services web, au format WSDL, déployés par l’entreprise.  Pages vertes : Contiennent les informations techniques détaillées sur les services fournis (processus métier, description de service….)
  • 20. UDDI  Pages blanches ou businessEntity:  Décrites sous la forme d’un schéma XML.  Elles contiennent les éléments relatifs à l’entreprise qui propose le service (nom, coordonnées, secteur d’activité, l’adresse du site web…)
  • 21. UDDI  Pages jaunes ou ServiceEntity:  Décrites aussi sous la forme d’un schéma XML  C’est un ensemble de services proposés répondant à un besoin métier spécifique  Contiennent aussi la description des services web proposés par ce dernier (nom du service, description, code…)  Une entreprise peut avoir plusieurs métiers et donc plusieurs businessService.
  • 22. UDDI pages vertes: Contiennent les informations techniques sur un service web. Contiennent aussi les références aux tmodels (spécification des interfaces des services web)
  • 23. Bibliographie  Introduction aux Web Services (2010), Rahee Ghurbhurn, Ecole Nationale Supérieure de Mines,  WSDL : Décrire et configurer (2010), Mickaël BARON.