Cours-Gratuit
  • Accueil
  • Blog
  • Cours informatique
home icon Cours gratuits » Cours informatique » Cours développement web

Developpement d'un web service cours avancé

Developpement d'un web service cours avancé
Participez au vote ☆☆☆☆☆★★★★★

Du XML au Services Web Services Web
Samir Tata
Département INFormatique
GET/INT
2005-2006
1


Services Web
Origines
Définition et architecture 
WSDL
SOAP
UDDI
2005-2006
2


Orientation Service : les origines
• Programmation orientée structure
– procédures, fonctions et données structurées
– applications monolithiques, applications serveurs isolées
• Programmation orientée objet
– classes (fonctions et données structurées)
– applications monolithiques, applications c/s isolées
• Programmation orientée composant
– composant (groupe d’interfaces)
– implémentation agnostique
– interaction application-application fonctionne 
2005-2006
3


Orientation Service : les origines
• POS, POO, POC : pourquoi on veut améliorer ?
– Paradigmes ?
• On parle du code et non de l’architecture 
• l’architecture suit le modèle de programmation
– et alors ?
• Concepts abstrait et mapping concret 
– mapping vers Java, C++, CORBA, COM …
– Réutilisation entre domaines différents difficile sinon 
impossible
• Besoins ?
– Support de l’hétérogénéité : plusieurs plate-formes 
logicielles et matérielles
– Accéder et manipuler des données partout
2005-2006
4


Orientation Service : les origines
• C’est quoi alors un service
– un block avec des propriétés fonctionnelles et non 
fonctionnelles
• Localisations, plate-forme et code sont peu important
• implications sur 
– le service qui peut être
• destinataire d’un message (application)
• manipulateur d’un message (infrastructure)
• transporteur d’un message (protocole)
– l'utilisation d’un service qui
• est toujours supposée distante
• passe toujours au dessus des plate-formes
• ignore l’implémentation
2005-2006
5


Service Web : les origines
• Le Web d’aujourd’hui
– conçu pour une interaction client-application
– développé autour de 2 standards http et html
– permet de supporter le e-commerce
• Le Web de demain ?
– Le Web est partout. Que peut-on faire avec ?
• les places de marché électronique (E-marketpalces)
• intégration des procédés métiers
• partage des ressources
– Les approches existantes sont ad hoc 
• e.g. interactions application-application avec des 
formulaires html
– But: permettre une interaction application-application
2005-2006
6


Services Web
Origines
Définition et architecture
WSDL
SOAP
UDDI
2005-2006
7


Service Web : définition
  A Web service is a software application identified by a URI, whose 
interfaces  and  binding(1)  are  capable  of  being  defined,  described 
and  discovered  by  XML  artefacts  and  supports  direct  interactions 
with  other  software  applications  using  XML  based  messages  via 
Internet-based protocols. (W3C definition)  
   Un service Web est une application logicielle identifiée 
par  un  URI  dont  les  interfaces  et  les  liaisons  sont 
définies, décrites et découvertes en XML et supporte 
une  interaction  directe  avec  les  autres  applications 
logicielles  en  utilisant  des  messages  XML  via  un 
protocole Internet.
(1) An association between an Interface, a concrete protocol and a data format
2005-2006
8


Service Web : défintion
• Les caractéristiques:
– Les services Web sont réutilisables
– Indépendamment de :
• la plate-forme (UNIX, Windows,…)
• leur implémentation (Java, C++, Visual Basic,…)
• l’architecture sous-jacente (.NET, J2EE,…)
2005-2006
9


Architecture orientée service
2005-2006
10


Architecture orientée service
• Les partenaires
– Le fournisseur de service crée le service Web, puis publie son 
interface ainsi que les informations d'accès au service, dans un 
annuaire de services Web. 
– L'annuaire de service rend disponible l'interface du service 
ainsi que ses informations d'accès, pour n'importe quel 
demandeur potentiel de service. 
– Le demandeur de service accède à l'annuaire de service pour 
effectuer une recherche afin de trouver les services désirés. 
Ensuite, il se lie au fournisseur pour invoquer le service. 
• Les standars
– Langage  XML : Décrit les informations
– Protocole SOAP : Exécute les services à distance 
– Langage WSDL : Décrit l’ interface des services
– Norme UDDI : Trouve les services dont on a besoin 
2005-2006
11


Services Web
Origines
Définition et architecture 
WSDL : Web Service description Language
SOAP
UDDI
2005-2006
12


Rôle du langage WSDL
• WSDL est un langage qui permet de décrire :
– un service Web,
– comment invoquer un service Web
• Objectif :
– Décrire les services comme un ensemble d’opérations et de messages 
abstraits relié à des protocoles et des serveurs réseaux
• Permet de décharger les utilisateurs des détails techniques de réalisation 
d’un appel
• WSDL est un langage qui standardise les schémas XML utilisés pour 
établir une connexion entre émetteurs et récepteurs. 
2005-2006
13


Web service description using WSDL
WSDL Specification of Web services
Web services 1
Web services 2
Operati  o  n    Port WSDL
Operati  o  n    Port WSDL
Operation         n°1
Operation         n°2
Binding WSDL
Binding WSDL
The binding define
SOAP, HTTP,
SOAP, HTTP,
the concrete
1 service = 1 or
I/O messages
MIME
MIME
elements of the
several ports
(request/response)
message
1 port = 1 or
constitute a WSDL
several operations
operation
HTTP/SOAP Response
Port WSDL n°1
HTTP/SOAP Request
Web services 1
HTTP/SOAP Response
Port WSDL n°2
HTTP/SOAP Request
Web services 2
Server
2005-2006
14


Structure d’un document WSDL
définition des types
définition des messages
définition des opérations 
définition des bindings
définition de endpoint 
2005-2006
15


Exemple: annuaire (1/4)
Opérations :
– Ajouter une entrée:
• Name : INT
• Address : 
– city: Evry
– number : 9 
– road : rue Charles Fourier
– telephone:
• code: 33
• number : 1 60 76 00 00 
– Chercher une entrée:
• Entrée:
– Name : INT
• Sortie:
– Address
• Classes:
– Directory
– Address 
– Phone
2005-2006
16


Exemple: annuaire (1/3)
package directory;
import .Hashtable; 
public class Directory {
    private Hashtable  entries; 
public Directory (){
entries = new Hashtable();
    }
    public void addEntry (String name, Address address){
(name, address);
    }
    public Address lookup(String name){
return (Address) (name);
    }
}
2005-2006
17


Exemple: annuaire (2/3)
package directory;
public class Phone {
    int code ;
    String number ;
    public Phone (int codep, String numberp){
code = codep;
number = numberp;
    }
    public int getCode(){
return code;
    }
    public void setCode(int codep){
code = codep;
    }// … getter and setter of number
}
2005-2006
18


Exemple: annuaire (3/3)
package directory;
public class Address {
    String road ;
    int number;
    String  city;
    Phone telephone;
    public Address ( String roadp, int numberp, String  cityp, Phone telephonep){
road=roadp; number=numberp; city=cityp;
telephone=new Phone(telephonep.getCode(), telephonep.getNumber());
    }
    public String getRoad(){
return road;
    }
    public void setRoad(String roadp){
road = roadp;
    }
   //… getter and setter of number, city, and telephone
}
2005-2006
19


WSDL :  
targetNamespace="http://localhost:8081/axis/services/DirectoryService" 
xmlns="; 
xmlns:apachesoap="; 
xmlns:impl="http://localhost:8081/axis/services/DirectoryService" 
xmlns:intf="http://localhost:8081/axis/services/DirectoryService" 
xmlns:soapenc="; 
xmlns:tns1="urn:DirectoryServiceTypes" 
xmlns:wsdl="; 
xmlns:wsdlsoap="; 
xmlns:xsd=";>
2005-2006
20


WSDL :  
                    xmlns=";>
2005-2006
21


WSDL :  
2005-2006
22


WSDL :  
• Les types de port (port Type) décrivent un ensemble 
d’opérations. Peuvent être comparés à une interface 
Java
– One-way
• le service reçoit un message en entrée (). 
– Request-response
• le service reçoit un message en entrée () et renvoie un 
message en sortie  ou un ou plusieurs messages 
d’erreur ()
– Solicit-response
• Le service envoie un message () et reçoit un 
message corrélé () ou un ou plusieurs messages 
d’erreur ().
– Notification
• le service envoie un message de notification ()
2005-2006
23


WSDL :  
2005-2006
24


WSDL : 
transport=";/>
         encodingStyle=";  
use="encoded"/>
2005-2006
25


WSDL : 
• Le port est un point de terminaison identifié de manière unique par la 
combinaison d'une adresse Internet et d'une liaison
• Un Service est une collection de points d’entrée (endpoint) relatifs
  binding="impl:DirectoryServiceSoapBinding" 
name="DirectoryService">
       location="http://inf-6820:8081/axis/services/DirectoryService"/>
2005-2006
26


WSDL : Conclusion
• Avantages
– Description de services assez simple
– Facile à interroger sur l’Internet
– Extensible
• Inconvénient
– Peu de fonctionnalitésoffertes
2005-2006
27


Services Web
Origines
Définition et architecture 
WSDL
SOAP: Simple Object Access Protocol
UDDI
2005-2006
28


Structure d’un message SOAP
SOAP Message
Le message SOAP Complet
Entête standard HTTP
HTTP Headers
et entête SOAP HTTP
SOAP Envelope
Enveloppe
SOAP Header
 Entête
Headers
Entête individuelle
Corps qui contient les
SOAP Body
appels de méthodes SOAP
Method Call & Data
Appel de méthode et description
en XML de données

2005-2006
29


SOAP :  Message
 entête  
 Corps du message  
 Erreurs éventuelles 
2005-2006
30


L’enveloppe et l’entête
• L’enveloppe : définit le document XML  comme étant un 
message SOAP
<soap:Envelope
xmlns:soap="
" 
soap:encodingStyle="
encoding/"> 
• L ’entête : contient des éléments définis par l’utilisateur
fr 
Euro 
2005-200
< 6/soap:Header>
31


Le corps : Appel
xmlns:soapenv=" > 
  " >
  INT


  Evry
  9
 Rue Charles Fourier
33
  160760000
2005-2006
32


Le corps : Appel
xmlns:soapenv="; 
xmlns:xsd="; 
xmlns:xsi=";>
   soapenv:encodingStyle="; >
INT
2005-2006
33


Le corps : réponse
   soapenv:encodingStyle="; >
   Evry
   9
   Rue Charles Fourier
33
   160760000
2005-2006
34


Services Web
Origines
Définition et architecture 
WSDL
SOAP
UDDI : Universal Description, Discovery and Integration
2005-2006
35


UDDI
• UDDI
– Annuaire mondial d'entreprises basé sur le Web
– Il permet d'automatiser les communications entre 
prestataires, clients, etc..
– Très orienté « affaires » (vente, prestation)
– Accessible grâce à SOAP
• Structure de données
 Intégrant toutes sortes d'entrées (nom, carte d'identité des 
sociétés, description des produits et des services, etc.), 
• Qui : Le nom de l’entreprise, les contacts 
• Quoi : Les classes, les noms des services
• Où : Les adresses d’accès aux services
• Comment : Les informations concernant les interfaces, les 
propriétés
2005-2006
36


Les pages de UDDI 
• Pages blanches
– Pour trouver un service par contact, nom et 
adresse
• Pages jaunes
– Pour trouver un service par sujet (domaine) 
basé sur une taxonomie des services publiés 
dans l’annuaire 
• Pages vertes
– Pour trouver un service par ses 
caractéristiques techniques
2005-2006
37


Naviguer dans une base de services web
• • Sélectionner un service 
• Accéder au WSDL
• L’essayer
2005-2006
38


Références
• Web
– Site de W3C:– Site de Zvon:– Apache XML:– Apache WS: 
• Livres
– Georges Gardarin : Des bases de données aux services Web, Dunod, 
Paris, 2002
– Hubert Kadima et Valérie Monfort : Les services Web: techniques, 
démarches et outils, Dunod, Paris, 2003
– Gustavo Alonso, Fabio Casati, Harumi Kuno, and Vijay Machiraju  : Web 
Services: Concepts, Architecture and Applications, Springer-Verlag, New 
York, 2004
– Jorge Cardoso and Amit P. Sheth :  Semantic Web Services, Processes 
and Applications (Semantic Web and Beyond: Computing for Human 
Experience), Springer-Verlag, New York, 2006 
2005-2006
39


Decouvrir ces documents

  • Cours avance en developpement et croissance

    Cours avance en developpement et croissance

  • Modèle Word pour offre de service

    Modèle Word pour offre de service

  • Support de cours pour apprendre à Créer un service avec WinDev

    Support de cours pour apprendre à Créer un service avec WinDev

  • Formation avancé de développement web en espagnol

    Formation avancé de développement web en espagnol

  • Livre sur la gestion des connaissances au service de la performance

    Livre sur la gestion des connaissances au service de la performance

  • Modèle d’offre de service sur Excel

    Modèle d’offre de service sur Excel

  • Modèle de note de service sous Word

    Modèle de note de service sous Word

  • Technicien Service de Restauration

    Technicien Service de Restauration

Articles connexes

  • Études de cas modélisation avec UML
  • Comment élaborer un plan de développement des compétences ?
  • Comment devenir un consultant en développement durable et RSE?
  • Comment trouver le service client d’une marque en France?
  • Java VS Python : Quel langage est le meilleur ?
  • QCM service Web de Windows
  • Cours de soutien scolaire bénévole - Informations et conseils
  • Cours particuliers : une nouvelle école informelle ?
  • Contactez-nous
  • A propos de nous
  • On recrute
  • Rechercher dans le site
  • Politique de confidentialité
  • Droit d'auteur/Copyright
  • Conditions générales d'utilisation
  • Plan du site
  • Accueil
  • Blog
  • Finance et compta.
  • Formations Pro.
  • Logiciels & Apps
  • Organisation
  • Cours informatique
  • Aide à la rédaction
  • Etudes et Metiers
  • Science et Tech
  • Titans de la Tech
id 11354 02