0% ont trouvé ce document utile (0 vote)
41 vues47 pages

Introduction aux Web Services et leur Architecture

Le document décrit ce qu'est un service web, son architecture et son fonctionnement. Un service web permet à des applications développées dans différents langages de communiquer via internet en utilisant des protocoles standardisés comme SOAP, XML et HTTP.

Transféré par

ZEINEB DALY
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)
41 vues47 pages

Introduction aux Web Services et leur Architecture

Le document décrit ce qu'est un service web, son architecture et son fonctionnement. Un service web permet à des applications développées dans différents langages de communiquer via internet en utilisant des protocoles standardisés comme SOAP, XML et HTTP.

Transféré par

ZEINEB DALY
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

s

ua
ao
D
Web Services

a
ay
Dr Thouraya Daouas
ur
ho
rT
D
s
ua
ao
D
QU’EST CE QU’UN WEB

a
ay
SERVICE?
ur
ho
rT
D

Dr Thouraya Daouas 2
WS: Qu’est ce que c’est ?

s
ua
Les services web permettent à

ao
différentes applications écrites dans
des langages de programmation
différents de communiquer entre elles.

D
Applications modernes développées dans:

a
Java, Net, Angular JS, Node.js, etc.

ay
ur
Il peut être difficile d’assurer la communication
entre ces applications.
ho
rT

Utilisation des Web Services


D

Dr Thouraya Daouas 3
Web et Internet: Confusion !

s
ua
ao
Web une partie d’Internet

D
News

a
Groups

ay
emails
FTP
gmail ur
ho
Dropbox
WEB
rT
D

Dr Thouraya Daouas 4
Et le Cloud ?

s
ua
Accès à des services via
une interface Web.

ao
a D
SERVICES

ay
WEB
ur Stockage de fichiers
Puissance de calcul
Dropbox
ho
Dématérialisation
Interface Fiche de
rT

Paie
D

Dr Thouraya Daouas 5
Service Web ?

s
ua
• Fournit une plateforme commune permettant
à de multiples applications développées avec

ao
différents langages de programmation de

D
communiquer entre elles.

a
• Médium standardisé permettant la

ay
communication entre les applications
clients et serveur sur le World Wide Web.
ur
• Module logiciel conçu pour effectuer certaines
ho
tâches.
rT
D

Dr Thouraya Daouas 6
Comment ça fonctionne ?

s
ua
Requête appel de SW

ao
Appel de procédure distante

Remote Procedure Call

a D
ay
Fichier XML: Extensible
Markup Language
ur
.NET
JAVA
Message SOAP: Simple
Object Access Protocol Prix produits
ho
vendus en ligne
rT

Interface
Frontend
D

Dr Thouraya Daouas 7
Pour quels avantages ?

s
ua
• Permettre aux applications en différents

ao
langages de communiquer entre elles.

D
• Permettre une interopérabilité entre les
applications.

a
ay
• Permettre d’accéder à des fonctionnalités
via internet. ur
• Utilisation d’un protocole industriel
ho
standardisé pour la communication.
• Réduire les coûts des communications
rT
D

Dr Thouraya Daouas 8
s
ua
ao
D
ARCHITECTURE D’UN

a
ay
WS?
ur
ho
rT
D

Dr Thouraya Daouas 9
Architecture du WS ?

s
ua
• WS reprennent la plupart des idées et des principes
du Web (HTTP, XML) les appliquent à des

ao
interactions entre machines.
• WS communiquent via un ensemble de technologies

D
fondamentales qui partagent une architecture
commune.

a
ay
• WS conçus pour être réalisés sur de nombreux
systèmes développés et déployés de façon
indépendante. ur
ho
• Technologies utilisées : HTTP, WSDL, REST, XML-
rT

RPC, SOAP et UDDI.


D

Dr Thouraya Daouas 10
Architecture du WS : REST

s
ua
• Representational State Transfer.

ao
• Élaborée en 2000 par Roy Fiedling: Un des

D
créateurs du protocole HTTP, du serveur
Apache HTTP entre autres.

a
ay
• REST est une manière de construire une
ur
application pour les systèmes distribués
ho
comme le World Wide Web.
rT
D

Dr Thouraya Daouas 11
Architecture du WS : XML-RPC

s
ua
• Remote Procedure Call.
• Protocole simple utilisant XML effectue des

ao
messages RPC.
• Requêtes écrites en XML et envoyées via HTTP

D
POST.

a
• Requêtes intégrées dans le corps de la réponse

ay
HTTP.
• XML-RPC indépendant de la plate-forme, donc
ur
communique avec diverses applications.
ho
• Ex: Client Java peut parler de XML-RPC à un
rT

PerlServer.
D

Dr Thouraya Daouas 12
Architecture du WS : SOAP

s
ua
• Simple object Access Protocol.
• Protocole standard de communication.

ao
• Protocole décrit en XML et standardisé par

D
le W3C.
• Présente comme une enveloppe pouvant

a
ay
être signée et pouvant contenir des données
ou des pièces jointes.
ur
• Circule sur le protocole HTTP et permet
ho
d'effectuer des appels de méthodes à
distance.
rT
D

Dr Thouraya Daouas 13
Architecture du WS : WSDL

s
ua
• Web Services Description Language.
• Langage de description standard.

ao
• Interface présentée aux utilisateurs.

D
• Indique comment utiliser le service Web et comment
interagir avec lui.

a
• Basé sur XML et permet de décrire de façon précise

ay
les détails concernant le service Web :
ur
– Protocoles, Ports utilisés, Opérations pouvant être
ho
effectuées, Formats des messages d'entrée et de sortie et
Exceptions pouvant être envoyées.
rT
D

Dr Thouraya Daouas 14
Architecture du WS : UDDI

s
ua
• Universal Description, Discovery and
Integration.

ao
• Annuaire de services fournit l'infrastructure de base
publication et découverte des services Web.

D
• Permet aux fournisseurs de présenter leurs WS aux
clients.

a
ay
• Contient 3 types d’informations :
– Pages blanches : incluent adresse, contact et
ur
identifiants relatifs au WS.
ho
– Pages jaunes : identifient secteurs d'affaires relatifs
au service Web.
rT

– Pages vertes : donnent informations techniques.


D

Dr Thouraya Daouas 15
Fonctionnement des WS ?

s
ua
Registre fournit un endroit central où les
programmeurs peuvent publier de
nouveaux services ou en trouver.

ao
a D
ay
ur
ho
Consommateur du WS. Utilise un WS Met en application le
rT

existant en ouvrant une connexion réseau service Web et le rend


et en envoyant une demande en XML. disponible sur
Internet.
D

Dr Thouraya Daouas 16
WS en couches ?

s
ua
Découverte des services UDDI Centraliser les services dans un

ao
registre commun. Simplifier les
fonctionnalités de recherche et de

D
publication.
Description du service WSDL Description de l'interface publique

a
du WS avec WSDL

ay
Communication SOAP Formatage des données
échangées. D’un côté protocole
RPC de l’autre côté REST.
Transport
ur HTTP Transport des messages XML
ho
échangés. Inclut HTTP, SMTP, FTP,
et un nouveau tel que BEEP.
rT
D

Dr Thouraya Daouas 17
s
ua
ao
D
SOAP

a
ay
PROTOCOLE DE
COMMUNICATION ?
ur
ho
rT
D

Dr Thouraya Daouas 18
SOAP : Définition ?

s
ua
Protocole d'invocation de méthodes sur
des services distants. Basé sur XML,

ao
SOAP a pour principal objectif d'assurer
la communication entre machines.

D
• XML-RPC et REST ses ancêtres.

a
• SOAP léger le plus implémenté actuellement

ay
recommandé par W3C.
• Très bien adapté à l'utilisation des WS : Permet de
ur
fournir au client une grande quantité d'informations
récupérées sur un réseau de serveurs tiers.
ho
• Aisément porté sur toutes les plates-formes et les
rT

technologies existantes.
D

Dr Thouraya Daouas 19
SOAP : Fonctionnement ?

s
ua
ao
a D
ay
ur
ho
rT
D

Dr Thouraya Daouas 20
SOAP: Structure ?

s
ua
Enveloppe: Elément de base.
contient spécifications espaces

ao
désignation, codage de données.

D
Header: Facultative. Indique si le
message est mandataire ou
optionnel. Utile quand message

a
ay
Traité par plusieurs.

Body: container pour les info. mandataires à l'intention du récepteur.


ur
Contient méthodes et paramètres qui seront exécutés par le destinataire
final.
ho
Fault: Facultatif. Utilisé pour reporter les erreurs.
rT
D

Dr Thouraya Daouas 21
s
ua
ao
D
WSDL

a
ay
LANGAGE DE
DESCRIPTION ?
ur
ho
rT
D

Dr Thouraya Daouas 22
WSDL : Structure ?

s
ua
Un document WSDL se compose d'un ensemble d'éléments décrivant les
types de données utilisés par le service, les messages que le service peut
recevoir ainsi que les liaisons SOAP associées à chaque message.

ao
a D
ay
ur
ho
rT
D

Dr Thouraya Daouas 23
WSDL : Eléments de structure ?

s
ua
• Types : fournit la définition de types de données utilisés
pour décrire les messages échangés.

ao
• Messages : représente une définition abstraite (noms et
types) des données en cours de transmission.

D
• PortTypes : décrit un ensemble d'opérations. Chaque
opération a zéro ou un message en entrée, zéro ou

a
plusieurs messages de sortie ou d'erreurs.

ay
– Opération : c'est la description d'une action exposée dans
le port.
ur
• Binding : spécifie une liaison entre un <portType> et un
protocole concret (SOAP, HTTP, etc.).
ho
• Service : indique les adresses de port de chaque liaison.
rT

– Port : représente un point d'accès de services défini par


une adresse réseau et une liaison.
D

Dr Thouraya Daouas 24
Structure de base d’un fichier XML

s
ua
• On parle de document XML
• Fichier books.xml

ao
a D
ay
ur
ho
rT
D

Dr Thouraya Daouas 25
Explications fichier XML

s
ua
• 1ère ligne facultative. Se trouve par défaut: le XML
correspond à la version 1.0 de la norme W3C.

ao
• On peut mettre des commentaires : < ! - - commentaire - - ! >
• Un élément XML : une balise ouvrante et une fermante.

D
• Contient des sous-éléments.
• Une règle: il ne doit posséder qu’un seul nœud racine.

a
• Il est possible de créer des attributs sur un élément. Pas de

ay
limite au nombre d’attributs.
• Un attribut possède un nom et une valeur.
ur
ho
rT
D

Dr Thouraya Daouas 26
Comparaison XML et JSON

s
ua
ao
a D
ay
ur
ho
rT
D

Dr Thouraya Daouas 27
s
ua
ao
D
POURQUOI UTILISER

a
ay
DES SERVICES WEB
XML ?
ur
ho
rT
D

Dr Thouraya Daouas 28
Principales raisons

s
ua
• Gagner une interopérabilité entre différentes applications
distribuées hébergées par différents serveurs programmées

ao
dans des langages différents.

D
• Rendre accessible des applications à travers firewall en
utilisant des protocoles Internet.

a
ay
• Offrir un langage de modélisation XML indépendant de la
plateforme ou de la technologie utilisée qui facilite le
développement. ur
ho
rT
D

Dr Thouraya Daouas 29
Propriétés

s
ua
Les services Web XML doivent respecter les
propriétés suivantes :

ao
D
• Être accessible via Internet.
• Se décrire et décrire les services qu’ils

a
ay
proposent par un descriptif de type XML.
• Communiquer avec un client sous forme de
ur
message XML transmis sur Internet via le
ho
protocole HTTP.
rT
D

Dr Thouraya Daouas 30
s
ua
ao
D
CARACTÉRISTIQUES

a
ay
DES SERVICES WEB
XML ?
ur
ho
rT
D

Dr Thouraya Daouas 31
Caractéristiques générales

s
ua
• Technologie basée sur XML.
• Supportée par la majorité des entreprises

ao
en TI.

D
• XML langage neutre pour représenter les
données. 2volution du langage SGML

a
ay
(Standard Generalized Markup Language).
• Le support de XML par les entreprises
ur
assure que chaque technologie logicielle
ho
aura une stratégie de service XML dans les
années à venir.
rT
D

Dr Thouraya Daouas 32
Caractéristiques Service Web XML

s
ua
• Représentation des données basée sur
XML.

ao
• Interface flexible.

D
• Habileté d’interagir de manière synchrone
ou asynchrone.

a
ay
• Support des appels de fonctions distantes.
• Support d’échange de documents.
ur
ho
rT
D

Dr Thouraya Daouas 33
Frameworks disponibles

s
ua
• De nombreux langages sont en cours

ao
d’adaptation pour permettre l’utilisation de

D
services Web.

a
ay
• Adaptation: Développement librairie
d’accès au services Web qui se base sur
ur
d’autres librairies (librairies de sérialisation
ho
XML).
rT
D

Dr Thouraya Daouas 34
Exemples concrets

s
ua
• MS SOAP toolkit: Permet de créer des applications
ou modifier des existantes développées par ex.

ao
avec Visual Studio.
• Framework .NET: Complètement orienté SW XML.

D
Indiqué pour des entreprises débutant le dév. de
SW XML.

a
• Communauté Java: Très productive des services

ay
Web XML.
ur
• Borland, MS, IBM et SUN : chacun a développé sa
propre librairie payante pour l’accès aux SW XML.
ho
• Apache et Jboss: développement gratuit. Solution
gratuite sont encore complexes à utiliser.
rT

• Python ou PHP: Dév. et accès: Premiers pas!


D

Dr Thouraya Daouas 35
s
ua
ao
D
ARCHITECTURE 5

a
ay
COUCHES
ur
ho
rT
D

Dr Thouraya Daouas 36
5 Couches

s
ua
• Proposé par Stève Sfartz pour bien coder les
applications.

ao
Client

D
Application

a
ay
Entreprise

ur Mapping
ho
Physique
rT
D

Dr Thouraya Daouas 37
Les couches

s
ua
• Physique : Structure physique des données
(SGBD, Annuaire LDAP, etc.)

ao
• Mapping : Réalise les accès vers la couche

D
Physique (cas de SGBDR c’est un outil mapping
relationnel/objet).

a
ay
• Entreprise : Objets structurants qui n’intègrent
ur
aucune notion fonctionnelle. Objets transversaux à
ho
toutes les applications. Propose des services
d’accès à ces méthodes à travers de méthodes de
rT

règles de gestion (création, recherche,


modifications et suppressions).
D

Dr Thouraya Daouas 38
Les couches

s
ua
• Application : Regroupe la logique fonctionnelle
d’une application. Utilise les services de la couche

ao
Entreprise pour réaliser le fonctionnel spécifié et le
présente sous services.

D
• Client : Interface utilisateur. Dans le cas d’une
application Web elle change fréquemment.

a
ay
Chaque sous système peut être modélisé de façon
ur
indépendante. Ce modèle garanti de hauts niveaux :
ho
• D’évolutivité : Fonctionnel et transactionnel dissociés.
• De maintenabilité : Responsabilités par couche.
rT

• De réutilisabilité : Faible couplage entre les couches.


D

Dr Thouraya Daouas 39
Utilisation des services

s
ua
• Se fait naturellement : Développer l’accès à

ao
une application via les SW XML revient à
développer une nouvelle couche Client.

a D
ay
• Le développement de la couche Client
« Services Web » se fera en important la
ur
façade de la couche application dans un
ho
outil de développement SW XML.
rT
D

Dr Thouraya Daouas 40
s
ua
ao
D
XML

a
ay
ur
ho
rT
D

Dr Thouraya Daouas 41
Définition

s
ua
• XML (Extensible Markup Language, ou Langage
Extensible de Balisage).

ao
• Langage destiné à succéder à HTML (Hypertext
Markup Language) c’est un langage de balisage.

D
• Différence : HTML possède un ensemble de
balises de présentation prédéfinies / XML permet

a
ay
d’inventer de nouvelles balises d’isolement
d’informations ou d’agrégats élémentaires que
ur
peut contenir une page Web.
• XML et HTML ont un ancêtre commun : le SGML
ho
(Standard Generalized Markup Language).
rT

• Une de ses caractéristiques la séparation du


formatage et du contenu.
D

Dr Thouraya Daouas 42
Exemple HTML vers XML

s
ua
ao
Les balises concernent
la présentation finale.

a D
ay
ur
ho
rT
D

Dr Thouraya Daouas 43
Exemple HTML vers XML

s
ua
ao
Les balises ont un sens
et une hiérarchie et ne

D
concernent pas la
Présentation finale.

a
ay
ur
ho
rT
D

Dr Thouraya Daouas 44
Règles d’écriture

s
ua
Informations doivent être :
• Encadrés par des balises ouvrantes et fermantes. Ces

ao
élts ne doivent pas se chevaucher. Les élts vides sont
permis, selon le format <ELEMENTVIDE/>.

D
• Soit incluses à l’intérieur même des balises : attributs.
Ex :<LIVRE SUBJECT=’XML’>. attribut SUBJECT de

a
ay
l’élément LIVRE a la valeur ’XML’.
• Soit encore définies sous forme d’entités. Les entités
ur
sont des abréviations. ex ; si ’Extensible Markup
Language’ déclaré comme entité associée à la
ho
notation ’xml’ ; cette chaîne de caractères pourra être
abrégée en ’&xml ;’ dans tout le fichier XML.
rT
D

Dr Thouraya Daouas 45
Règles d’écriture

s
ua
• Une entité peut représenter un fichier XML externe
tout entier. Donc un même fichier XML (ex:

ao
bibliographie) pourra être utilisé par plusieurs pages
XML différentes.

D
• La structure arborescente du document XML (intitulé

a
ay
des balises, imbrications des balises, etc.) peut être
déclarée formellement dans le corps du document
ur
XML ou dans un fichier à part. Cette déclaration
s’appelle Définition de Type de Document (DTD).
ho
rT

• En XML cette déclaration est facultative, ce qui donne


une grande souplesse aux développeurs.
D

Dr Thouraya Daouas 46
Règles d’écriture

s
ua
• Lorsqu’un document XML possède une DTD associée
et la respecte, on dit qu’il est valide.

ao
• Lorsqu’il respecte seulement les règles de la
grammaire XML (balises fermées, correctement

D
imbriquées, etc.) on dit qu’il est bien formé.

a
ay
• La spécification XML se trouve à l’adresse
ur
http ://www.w3.org/TR/REC-xml
ho
rT
D

Dr Thouraya Daouas 47

Vous aimerez peut-être aussi