0% ont trouvé ce document utile (0 vote)
28 vues20 pages

Cours4 WSDL

Le document présente le WSDL (Web Service Description Language), un standard du W3C utilisé pour décrire l'interface publique d'un service web. Il détaille la structure d'un fichier WSDL, y compris les éléments clés tels que <types>, <message>, <portType>, <binding>, et <service>, ainsi que leur rôle dans l'interaction avec les services web. Des exemples concrets et des explications sur les espaces de noms et les types de données sont également fournis.

Transféré par

Unknown
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
28 vues20 pages

Cours4 WSDL

Le document présente le WSDL (Web Service Description Language), un standard du W3C utilisé pour décrire l'interface publique d'un service web. Il détaille la structure d'un fichier WSDL, y compris les éléments clés tels que <types>, <message>, <portType>, <binding>, et <service>, ainsi que leur rôle dans l'interaction avec les services web. Des exemples concrets et des explications sur les espaces de noms et les types de données sont également fournis.

Transféré par

Unknown
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université Abderrahmane Mira de Béjaia

Faculté des Sciences Exactes


Département d’Informatique

Module : Services Web (M2 – GL – ReSyD – IA (S3))

Cours 04 : WSDL

Présenté par Dr BRAHAMI EL BOUHISSI H.

2017-2018
WSDL (Web Service Description Language)
O Standard du W3C :
Version 1.1 en 2001
Version 2.0 en 2007, encore peu supporté par les outils
O Objectif : décrire l'interface publique d'un Web Service (contrat de
service)
O Grammaire dérivée d’XML
O Web Service = ensemble de ports de connexions mettant à disposition
des opérations qui reçoivent et envoient des messages
O Deux types d’informations :
Fonctionnelles : interface du service (signature des méthodes…)
Techniques : URL, protocole…
O Fichier WSDL : utilisable par des outils de génération de code
WSDL (Web Service Description Language)
Regroupe les informations nécessaires pour interagir avec le service
•Les méthodes, les paramètres et valeurs retournées, le protocole
de transport utilisé, la localisation du service

Document indispensable au déploiement de Services Web


•Publication et recherche de services au sein de l’annuaire se font
via les documents WSDL
• Pour l’accès à un service particulier, un client se voit retourné
l’URL du fichier WSDL décrivant l’implémentation du service

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 3


WSDL : Version
Description à 2 niveaux: Séparation entre la partie abstraite et concrète

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 4


Structure d’un fichier WSDL 1.1

•Elément Type
Types des paramètres (schéma XML)

•Elément Message
Appel et retour d'opération

•Elément Port type


Groupe d'opération

•Elément Binding
URL de l'opération
Type de protocole

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 5


Structure d’un fichier WSDL 1.1

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 6


Exemple WSDL 1.1: [Link]

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 7


L'élément définition
L'élément racine dans un document WSDL est <wsdl:definition>. Il
contient un attribut targetNamespace qui définit un certain nombre
d'espaces de noms namespace auquel tous les noms déclarés dans un
élément du document WSDL appartiennent, ce qui permet d'éviter les
conflits de nommage.
<wsdl:definition name="customerExemple"
targetNamespace="[Link]
xmlns:soap="[Link]
xmlns:wsdl="[Link]
xmlns="[Link]

Dans cet exemple, l'attribut targetNamespace a pour valeur l'URL :


«[..][Link]/[Link]». Cela signifie que tous les noms
déclarés dans ce document WSDL appartiennent à cet espace de noms.
14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 8
Les espaces de noms
• Un espace de noms est identifié par une URI (Uniform Resource
Identifier) qui permet de l'identifier de manière unique.
• Schéma XML : [Link]
• La déclaration d'un espace de noms par défaut se fait dans le
premier élément qui utilise le vocabulaire, grâce au mot
clef xmlns comme XML namespace.
• Exemple : xmlns="mon_uri"

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 9


Structure d’un WSDL : <Types>
• Un type décrit la structure de données transmises dans un
message.
• Contient les définition de types utilisant un système de typage
par défaut XML Schema (XSD).
• Pouvant contenir des types simples et complexes

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 10


Structure d’un WSDL : <message>
• Décrit les données associées à une opération (1 requête et 1 réponse
HTTP par opération, 1 message d'erreur ”fault” optionnel).

• Un document WSDL peut contenir zéro ou plusieurs messages.


• Chaque message peut être un composé de plusieurs parties

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 11


Structure d’un WSDL : <portType>
• Un document WSDL peut contenir 0 à plusieurs portType
• L’élément portType contient un seul attribut name. La convention de
nommage nameOfWebService PortType.
• Composé d'un ensemble d'opérations abstraites (i.e. signature de la
méthode). Une opération est composée d’un message pour l’appel
(Input) et un pour le retour (Output).

Définition d’un seul type de port, avec les opérations abstraites,


14/12/2017 correspondant aux
Dr BRAHAMI déclarations
EL BOUHISSI - Services Webde méthodes dans l’interface Java
- WSDL 12
Structure d’un WSDL : <binding>
• Une liaison (ou binding) décrit la façon dont un portType (en
d’autres termes l’abstraction du service, i.e. ses opérations
abstraites) est mis en œuvre pour un protocole particulier
(HTTP par exemple) et un mode d’invocation (RPC par
exemple).
• Pour un portType, on peut avoir plusieurs liaisons, pour
différencier les modes d’invocation (RPC ou autres) ou de
transport (HTTP ou autre) des différentes opérations.

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 13


Structure d’un WSDL : <binding>

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 14


Structure d’un WSDL : <binding>
Une liaison WSDL décrit comment le service est lié à un protocole de messagerie,
généralement le protocole de messagerie SOAP. Une liaison WSDL SOAP peut être une
liaison de style Remote Procedure (RPC) ou une liaison de style document.

Le style RPC spécifie que le <soap: body> contient un élément avec le nom de la méthode
Web appelée. Cet élément contient à son tour une entrée pour chaque paramètre et la
valeur de retour de cette méthode.

Avec le style de document, les parties de message apparaissent directement sous


l'élément <soap: body>. Il n'existe pas de règles de formatage SOAP pour ce que contient
le <soap: body>. L'application serveur est responsable du mappage des objets serveur
(paramètres, appels de méthode, etc.) et des valeurs des documents XML.

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 15


Structure d’un WSDL : <service>
• Un service est décrit comme un ensemble de points finaux du réseau
appelés « ports »
• Un port spécifie une URL qui correspond à l’implémentation du
service par un fournisseur.
• Le port est associé à un « binding » définissant ainsi un simple point
de terminaison (endpoint:@ où se situe le WS)

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 16


WSDL : exemple d’interface de service
O Avec des types simples

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 17


WSDL : exemple d’interface de service
O Avec des types complexes
Déclarés dans un fichier XSD (XML Schema) séparé
Ou déclarés dans le fichier WSDL

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 18


Exercice
Annoter ce WSDL de vos commentaires :à quoi il sert, comment
s’en servir d’un point de vue client, quelles données vont circuler
quand on l’utilise, etc.

Cliquez ici pour visualiser le Fichier WSDL

14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 19


Solution
Ce service web offre une unique opération : sur envoi d’un
message de type GetLastTradePrice, l’opération nommée
GetLastTradePrice va s’exécuter. L’URL pour déclencher cette
opération depuis un navigateur web devrait
[Link]
Symbol=MonEntreprisePreferee.
Le message sera véhiculé par une enveloppe SOAP (on a
défini un soap binding). Le type de donnée en entrée est un
tickerSymbol prenant une valeur de type chaine de
caractères. En réponse, on obtient un price que l’on peut
interpréter comme un flottant.
14/12/2017 Dr BRAHAMI EL BOUHISSI - Services Web - WSDL 20

Vous aimerez peut-être aussi