II.9.2. Architecture d'un service Web
Les services Web reprennent la plupart des idées et des
principes du Web (HTTP, XML), et les appliquent à des interactions entre
machines. Comme pour le World Wide Web, les services Web communiquent via un
ensemble de technologies fondamentales qui partagent une architecture commune.
Ils ont été conçus pour être réalisés
sur de nombreux systèmes développés et
déployés de façon indépendante.
Les technologies utilisées par les services Web sont
HTTP, WSDL, REST, XML-RPC, SOAP et UDDI.
a. REST (REpresentational State Transfer)
REST est une architecture de services Web.
Élaborée en l'an 2000 par Roy Fiedling, l'un des créateurs
du protocole HTTP, du serveur Apache HTTPd et d'autres travaux fondamentaux,
REST est une manière de construire une application pour les
systèmes distribués comme le World Wide Web.
b.
22
XML-RPC(eXtensible Markup Language Remote Procedure
Call)
XML-RPC est un protocole simple utilisant XML pour effectuer
des messages RPC. Les requêtes sont écrites en XML et
envoyées via HTTP POST. Les requêtes sont intégrées
dans le corps de la réponse HTTP. XML-RPC est indépendant de la
plate-forme, ce qui lui permet de communiquer avec diverses applications. Par
exemple, un client Java peut parler de XML-RPC à un Serveur Perl.
c. SOAP (Simple object Access Protocol)
SOAP est un protocole standard de communication. C'est
l'épine dorsale du système d'interopérabilité. SOAP
est un protocole décrit en XML et standardisé par le W3C. Il se
présente comme une enveloppe pouvant être signée et pouvant
contenir des données ou des pièces jointes. Il circule sur le
protocole HTTP et permet d'effectuer des appels de méthodes à
distance.
Les interactions entre services Web s'effectuent par le biais
d'envois de messages structurés au format XML. Le protocole SOAP fournit
le cadre permettant ces échanges. SOAP est originellement issu de
tentatives précédentes visant à standardiser l'appel de
procédures à distance, et en particulier de XML-RPC. Mais
`à la différence des technologies RPC, SOAP n'est pas
fondamentalement lié à la notion d'appel de procédure. En
effet, SOAP vise à faciliter l'échange de messages XML, sans se
limiter à des messages dont le contenu encode des paramètres
d'appel de procédure et sans favoriser des échanges
bidirectionnels de type requête-réponse comme c'est le cas des
protocoles RPC. Dans le jargon des services Web, SOAP permet d'encoder des
interactions orientées RPC mais aussi des interactions
orientées-document.
d. WSDL (Web Services Description Language)
WSDL est un langage de description standard. C'est
l'interface présentée aux utilisateurs. Il indique comment
utiliser le service Web et comment interagir avec lui. WSDL est basé sur
XML et permet de décrire de façon précise les
détails concernant le service Web tels que les protocoles, les ports
utilisés, les opérations pouvant être effectuées,
les formats des messages d'entrée et de sortie et les exceptions pouvant
être envoyées.
e. UDDI (Universal Description Discovery and
Integration)
UDDI est un annuaire de services. Il fournit l'infrastructure
de base pour la publication et la découverte des services Web. UDDI
permet aux fournisseurs de présenter leurs services Web aux clients.
23
Les informations qu'il contient peuvent être
séparées en trois types :
? les pages blanches qui incluent l'adresse, le contact et les
identifiants
relatifs au service Web ;
? les pages jaunes qui identifient les secteurs d'a?
Web ;
? les pages vertes qui donnent les informations techniques
|