Web Services

Preview:

DESCRIPTION

Web Services. Génie Documentiel Delacrétaz Jean-Marc. Sommaire. Généralités Exemples et architecture Les standards SOAP WSDL UDDI Conclusion Références. Web services. Généralités. Qu’est ce que c’est?. - PowerPoint PPT Presentation

Citation preview

1

Web Services

Génie Documentiel

Delacrétaz Jean-Marc

2

Sommaire

1. Généralités

2. Exemples et architecture

3. Les standards

1. SOAP 2. WSDL3. UDDI

4. Conclusion

5. Références

3

Web services

Généralités

4

Qu’est ce que c’est? Un service Web est une « unité logique applicative »

accessible en utilisant les protocoles standard d’Internet

Une «librairie» fournissant des données et des services à d’autres applications.

Ils combinent les meilleurs aspects du développement à base de composants et du Web.

Ils s’appuient sur un ensemble de standards (WSDL, SOAP et UDDI)

5

Caractéristiques

Les Web services sont réutilisable

Indépendamment de :

la plate-forme (UNIX, Windows,…) leur implémentation (Java, C++, Visual Basic,…) l’architecture sous-jacente (.NET, J2EE,…)

6

3 générations d’application Web

1 ° Génération Pages Web statiques (HTML)

2 ° Génération Des applications réelles

(Pages Web dynamiques, ASP, JSP, PHP, ...)

3 ° Génération Les Web services (basé sur XML)

7

Web Services : une révolution?

Non, pas vraiment ils poursuivent un vieux rêve

de l’informatique :

Un monde où les ressources informatiques pourraient inter opérer à travers un réseau, indépendamment de leurs plates-formes d'origine

8

Pourquoi faire? (1)

Faire interagir des composants hétérogènes, distants, et indépendants avec un protocole standard (SOAP)

Plus concrètement: Permettre à une application de trouver

automatiquement sur Internet le service dont elle a besoin et d'échanger des données avec lui

9

Pourquoi faire ? (2)

Les Web Services ont été conçus pour intégrer la dimension d'Internet, et la standardisation des échanges.

Les services Web permettent d’interconnecter : Différentes entreprises Différents matériels Différentes applications Différents clients

Dédiés aux applications B2B (Business to Business), EAI (Enterprise Application Integration), P2P (Peer to Peer).

10

Web services

Exemples et architecture

11

Exemple d’utilité

Imaginons : Un serveur de news qui permette à n'importe quel

client de connaître la dernière news.

Dans ce cas : Un service Web ferait office de serveur et un

programme prévu pour fonctionner avec celui-ci permettrait de récupérer les informations.

12

Exemple plus complet (1) Organisation d’un voyage

Billet d’avion, hôtel, location de voiture, … Déclarations administratives

Solution 1 : Recherche personnelle (Internet, téléphone,…) Déclaration administrative manuelle

Solution 2 : Agent de voyage Réponse généralement unique Déclaration administrative manuelle

Solution 3 : Web Services Découverte dynamique de partenaire

13

Exemple plus complet (2)

Les services Web lui permettront de lancer une programme qui lui réservera à la fois un billet d’avion, une location de voiture et une chambre d’hôtel

Pour chaque opération la demande aura été dirigée vers un site spécialisé

L’interlocuteur du client reste l’agence de voyage

14

Schématiquement

15

WS: une architecture orientée service Le fournisseur de service créé 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 consommateur 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.

16

Les quatre principales technologies desServices Web

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

17

Services Web : vue générale

18

Web services

SOAP : Simple Object Access Protocol

19

Protocole SOAP (Simple Object Access Protocol)

Protocole de transport réseaux

Utilisation conjointe de XML et HTTP

But : définir la structure des messages échangés par les applications via le net

Il est particulièrement utile pour exécuter des dialogues requête-réponse RPC (Remote Procedure Call)

Permet à un client d'invoquer un service distant

SOAP a été construit pour pouvoir être aisément porté sur toutes les plates-formes et les technologies

20

Précisions sur SOAPStructure d'un message SOAP :

une enveloppe qui définit la structure du message Élément racine Namespace

un en-tête (optionnel) qui contient les informations d'en-tête (autorisations et transactions par exemple),

un corps contenant les informations sur l'appel et la réponse

une gestion d'erreur qui identifie la condition d'erreur

des attachements (optionnel)

21

Types de message SOAP

SOAP définit trois types de message

Appel (Call) – obligatoire

Réponse (Response) – optionnel

Erreur (Fault) - optionnel

22

Structure d’un message SOAP

SOAP Message

SOAP Envelope

SOAP Header

SOAP Body

Method Call & Data

Headers

HTTP Headers

Appel de méthode et descriptionAppel de méthode et descriptionen XML de donnéesen XML de données

Corps qui contient lesCorps qui contient lesappels de méthodes SOAPappels de méthodes SOAP

Entête individuelleEntête individuelle

EntêteEntête

EnveloppeEnveloppe

Entête standard HTTPEntête standard HTTPet entête SOAP HTTPet entête SOAP HTTP

Le message SOAP CompletLe message SOAP Complet

23

Message SOAP encapsulé dans une requête HTTP

24

Message SOAP encapsulé dans une requête HTTP

25

En résumé

SOAP :

Permet une communication en univers hétérogène

Est assez léger simple et facile à déployer Est extensible Est ouvert

26

Web services

WSDL : Web Services Description Language

27

Rôle du langage WSDL

WSDL est un langage qui permet dedécrire: un service Web, et comment l’ invoquer

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.

28

Structure de WSDL:

<?xml version="1.0" encoding="utf-8"?>

<definitions>

<types>!--abstract data types</types>

<message>!--message structure</message>

<portType>!--Web Service Interface</portType>

<binding>!--how the service is accessed</binding>

<service>!--who provides the service</service>

</definitions>

29

Concepts de WSDL (1)WSDL définit :

Les types Contient les définitions de types utilisant un

système de typage. Utilisation de XML Schema pour définir les types de données.

Le message Décrit les noms et types d’un ensemble de

champs à transmettre. Peut-être comparé aux paramètres d'un appel de procédure.

Les types de port (port Type) Décrit un ensemble d’opérations. Peut être

comparé à une interface Java.

30

Eléments de WSDL (2) La Liaison (binding)

Définit le format des messages et le protocole utilisé par chaque type de port

Le port un point de terminaison identifié de manière

unique par la combinaison d'une adresse Internet et d'une liaison

Un Service Une collection de points d’entrée (endpoint)

relatifs.

31

Conclusion WSDL

Avantages Description de services assez simple Facile à interroger sur l’Internet Extensible

Inconvénient Peu de fonctionnalités offertes

32

Web services

UDDI :

Universal Description, Discovery and Integration

33

3ème standard : UDDI (Universal Description, Discovery and Integration)

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

Intégrant toutes sortes d'entrées (nom, carte d'identité des sociétés, description des produits et des services, etc.),

34

Structure des données UDDI

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

35

Structure UDDI

36

Structuration de l’information

37

Annuaires UDDI en ligne

uddi.microsoft.com

www.ibm.com/services/uddi

uddi.hp.com

uddittest.sap.com

...

38

Web Services

Conclusion

39

Avantages des Web services

Ensemble assez simple de propositions

Le Web comme environnent de développement

Il utilise les standards de W3C

Très adaptées aux problèmes des communications entre applications WEB

40

Limites des Web services

Les 3 outils (SOAP, WSDL et UDDI) ne règlent pas tout. Il reste des problèmes de: vocabulaire, de sémantique pour faire dialoguer des

applications

Problèmes de performances

41

Références officielles Services Web :

Spécifications officielles : http://www.w3c.org Documentations et exemples en ligne : http://www.xmlbus.com

SOAP : Spécification SOAP 1.1 : http://www.w3c.org/TR/SOAP Spécification SOAP 1.2 : http://www.w3c.org/TR/soap12 Implémentations : http://www.soapware.org Exemples en ligne : http://soapclient.com/soaptest.html

WSDL : Web Services Description Language (WSDL) 1.1 :

http://www.w3.org/TR/wsdl

UDDI : Spécification : http://www.uddi.org Serveur UDDI : http://uddi.microsoft.com et http://uddi.ibm.com

42

Références personnelles

Web Services http://www.w3.org/2002/ws http://encyclopedie.journaldunet.com http://www.planetexml.com http://www.esup-portail.org/consortium/espace http://xmlfr.org http://lfe.developpez.com/WebService http://www.softeam.fr/technologies_web_services.php

http://www.djefer.com/articles/soap/index.htm

43

MERCI

de

votre Attention!