Présentation
En anglaisAuteur(s)
-
Michel RIVEILL : Professeur à l’université de Nice‐Sophia‐Antipolis
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleINTRODUCTION
Pour faire communiquer deux morceaux d’une même application ou deux applications distinctes, les programmeurs pouvaient jusqu'à présent utiliser trois propositions difficilement compatibles : COM+, la version distribuée du modèle objet de Microsoft limitée dans les faits au monde Windows ; CORBA, spécification normative d'un bus objet multi-plate-forme et multilangage et le modèle des Enterprise Java Beans (EJB), spécification d'architecture pour la construction et l'exécution de composants Java proposée par Sun. Indépendamment des apports des uns et des autres, qui sont en dehors de cette étude, peu de passerelles logicielles permettent de convertir aisément les requêtes issues d’un environnement afin qu'elles soient acceptées dans un autre environnement. Il est donc illusoire de vouloir faire cohabiter simplement au sein d’une même application plusieurs bus logiciels (« middleware ») d’interconnexion. Le besoin étant essentiel, plusieurs types de passerelles existent.
Microsoft, IBM et d’autres par la suite, observant que les incompatibilités et la lourdeur de ces propositions conduisaient au développement de solutions fondées sur des requêtes HTTP, ont introduit SOAP (Simple Object Access Protocol), un protocole de communication entre objets, très simple, reposant sur les acquis de l’Internet. En particulier, cette proposition utilise XML pour la description des requêtes et HTTP pour leur transport, ce qui permet d’éviter les problèmes liés au filtrage par des pare-feu (« firewall »). Ces deux standards, largement diffusés, sont utilisés en lieu et place de tout autre schéma propriétaire. Pour être plus précis, SOAP consolide et rend normative une proposition existante « XML-RPC ». SOAP, soumis à l’IETF et adopté par le W3C, comble une lacune du Web.
L’objectif de ce document est de présenter les principes de fonctionnement de SOAP ainsi que de donner quelques exemples d’utilisation.
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
1. Caractéristiques fondamentales
1.1 Pourquoi introduire SOAP
En quelques années, accéder à des informations distantes en utilisant Internet est devenu un besoin essentiel. Aujourd’hui, le protocole le plus utilisé pour effectuer cette action est de très loin HTTP (HyperText Transfer Protocol) défini par le W3C (World Wide Web Consortium). Supporté par chaque navigateur et serveur Web, c’est une technologie pratique pour transférer du texte, des images, du son et tout autre type d’information numérique.
Mais HTTP seul n’est pas suffisant et l’utilisation d’Internet ne se limite plus aux transferts de fichiers peu structurés contenant du texte et des images. Les échanges d’informations typées entre composants d’une même application se développent.
La manière de construire un échange entre deux composants repose essentiellement sur le concept de RPC (Remote Procedure Call, appel de procédure à distance) Communication synchrone entre programmes par RPC et RMI. Dans ce modèle (figure 1), le client prend l’initiative du dialogue et envoie un message de requête à un serveur puis attend sa réponse. De son côté, le serveur scrute sa « boîte aux lettres » et si un message est présent, le prend, le traite et renvoie une réponse au client.
Bien que HTTP soit un protocole flexible, il n’a jamais été défini pour permettre l’appel de procédure à distance. Différents protocoles d’appel à distance existent : RPC de DCE utilisé dans DCOM (Distributed Component Object Model) de Microsoft, le protocole IIOP (Internet Inter-ORB Protocol) défini par l’OMG (Object Management Group) et d’autres. Tous ces protocoles fournissent des services similaires et permettent à un processus client d’appeler des services décrits sous forme de procédure dans des serveurs et à un processus serveur de rendre accessibles sous forme de procédure différents services.
Utiliser ces différents protocoles au sein d’un...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Caractéristiques fondamentales
BIBLIOGRAPHIE
-
(1) - GUDGIN (M.), HADLEY (M.), MOREAU (J.J.), NIELSEN (H.-F.) - * - SOAP Version 1.2. W3C Working Draft, 9 juill. 2001 http://www.w3.org/TR/soap12/
-
(2) - SCRIBNER (K.), STIVER (M.C.), SCRIBNER (K.) - Understanding SOAP : The Authoritative Solution. - 1re éd., Ed. Sams, janv. 2000.
-
(3) - XML Cover Pages - http://www.oasis-open.org/cover/
-
(4) - McLAUGHLIN (Br.) - Java and XML. - 1re Éd., O’Reilly & associates, juin 2000.
-
(5) - BIRREL (A.D.), NELSON (B.J.) - Implementing Remote Procedure Call. - ACM Transactions on Computer Systems, 2 (1), 39-59 (1984).
-
(6) - FIELDING (R.), GETTYS (J.), MOGUL (J.C.), FRYSTYK (H.), BERNERS-LEE (T.) - Hypertext Transfer Protocol - HTTP/1.1. - RFC 2616, U.C. Irvine, W3C/MIT, janv. 1997.
-
...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive