Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
1
Génie Documentiel Delacrétaz Jean-Marc
Web Services Génie Documentiel Delacrétaz Jean-Marc
2
Sommaire Généralités Exemples et architecture Les standards Conclusion
SOAP WSDL UDDI Conclusion 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) Définition ( Web Services : Application web pouvant interagir dynamiquement avec d'autres programmes en utilisant des protocoles d'échanges basé sur XML comme SOAP, XML-RPC ou XMLP. Des procédures de description et de recherche de ces services ont pour nom ebXML (electronic business XML), UDDI (Universal Discovery, Description and Integration) et WSDL (Web Services Description Language). Le but est de permettre à une application de trouver automatiquement sur Internet le service dont elle a besoin et d'échanger des données avec lui. Si le service est payant, la procédure de règlement sera comprise dans la description du service.
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,…) .NET Dot Net : Lancée en juin 2000 lors d'une conférence donnée par Bill Gates et Steve Ballmer, .NET ("dot Net" en anglais) dessine la stratégie 'tout Internet' de Microsoft. Objectif affiché : faire évoluer les solutions Windows vers un modèle ASP (applications hébergées) et proposer une plate-forme logicielle sur laquelle les entreprises pourront s'appuyer pour échanger et mettre à disposition des données et des services applicatifs. En quelque sorte, après s'être imposé dans le domaine des systèmes d'exploitation pour les PC, Microsoft prépare avec .NET le système d'exploitation du Web: une architecture logicielle au sein de laquelle des services applicatifs pourront collaborer via Internet. En ce sens, .NET représente l'adaptation « Microsoftienne » de ce que d'autres éditeurs nomment les services Web. .NET ne renvoie pas à un produit précis; il s'agit avant tout d'une initiative stratégique qui va être portée par l'ensemble des produits de la firme. On peut toutefois distinguer: 1/ Les applications traditionnelles de Microsoft : Windows XP et Office XP, nouvelles éditions du système d'exploitation et de la suite bureautique de Microsoft, qui s'appuient d'ores et déjà sur un système d'enregistrement en ligne. 2/ Les logiciels serveurs : une gamme de solutions (verticales pour certaines, horizontales pour d'autres) destinées à déployer et à administrer les composants logiciels dans le cadre de l'architecture .NET. Entre autres: Application Center distribue les applicatifs en mode hébergé à des machines clientes; Mobile Information Server déploie les Web Services sur des appareils mobiles; SQL Server stocke, retrouve et analyse les données XML structurées; BizTalk gère les processus métiers et les échanges de données à l'intérieur ou à l'extérieur de l'entreprise. 3/ Et les outils de développement, Visual Studio .NET en tête. C'est dans cet environnement qu'un composant pourra recevoir son enveloppe de service Web. Dans le cadre de sa stratégie .NET, Microsoft entend aussi promouvoir C# (prononcez "Ci charp"), un langage clairement conçu pour présenter aux développeurs une alternative à Java. J2EE Java 2 Platform Enterprise Edition: Ensemble de normes concernant les plates-formes e-business pour entreprises (serveurs d'application), basé sur le langage Java.
6
3 générations d’application Web
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) ASP Active Server Page : Technologie de pages web dynamiques de Microsoft. Ces pages HTML contiennent un ou plusieurs scripts qui sont exécutés dynamiquement sur le serveur Web, avant que la page soit envoyée au navigateur, c'est-à-dire à l'utilisateur. JSP Java Server Page : Extension de la technologie Java Servlet de Sun qui permet de programmer simplement l'affichage de contenus dynamiques sur le Web. JSP consiste en une page HTML incluant du code Java qui s'exécutera soit sur le serveur Web, soit sur le serveur d'application. Le langage HTML décrit la manière dont s'affiche la page, le code Java servant à effectuer un traitement, par exemple récupérer les informations nécessaires pour effectuer une requête dans une base de données. PHP Pre Hypertext Processor : Technologie libre utilisée pour créer des pages dynamiques. Reprenant des éléments de syntaxe des langages C, Java et Perl, le code PHP est inclus dans les pages HTML pour être exécuté sur le serveur. On se sert habituellement de PHP pour extraire du contenu d'une base de données et l'afficher sur une page Web.
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). B2B : Se dit d'une activité professionnelle (échanges ou transactions commerciales) effectuée d'entreprise à entreprise. Le commerce B to B désigne par exemple les échanges entre un fournisseur de produits intermédiaires et un producteur distribuant au consommateur final. Services B to B : services aux entreprises. EAI : Enterprise Application Integration . Intégration des applications dans l'entreprise . L'objectif est de faire fonctionner ensemble les programmes existant dans une entreprise, en vérifiant leur interopérabilité, et gérer l'hétérogénéité générale . P2P : Relation d'échanges réciproques qui unit directement deux acteurs de même statut (des pairs, donc). A l'origine désigne une technologie d'échange de fichiers entre internautes, permettant à deux ordinateurs reliés à Internet de communiquer directement l'un avec l'autre sans passer par un serveur central. Au-delà, désigne le modèle économique qui y est associé qui permet une mise en commun à une vaste échelle de données ou de capacités, débouchant sur une réduction spectaculaire des coûts. Napster a été le modèle le plus spectaculaire de la réussite technologique du P2P... et de son échec économique.
10
Exemples et architecture
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 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 des Services 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
SOAP : Simple Object Access Protocol
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 SOAP Simple Object Access Protocol : Protocole standard destiné au services web. Lancé par IBM et Microsoft, il permet d'utiliser des applications invoquées à distance par Internet. RPC Remote procedure call : Un protocole permettant la mise en place simple d'applications client serveur. Initialement développé par Sun dans le monde TCP-IP
20
Précisions sur SOAP Structure 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 Le message SOAP Complet Entête standard HTTP et entête SOAP HTTP HTTP Headers Enveloppe SOAP Envelope SOAP Header Entête Headers Entête individuelle SOAP Body Corps qui contient les appels de méthodes SOAP Method Call & Data Appel de méthode et description en XML de données
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
WSDL : Web Services Description Language
27
Rôle du langage WSDL WSDL est un langage qui permet de dé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. WSDL Web Service Description Language Dialecte XML dédié à la description de tous les éléments nécessaires pour interagir avec un service réseau (ou service web). Soutenu principalement par Ariba, IBM et Microsoft, WSDL est en 2002 proposé au W3C pour standardisation.
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 Inconvénient
Description de services assez simple Facile à interroger sur l’Internet Extensible Inconvénient Peu de fonctionnalités offertes
32
UDDI : Universal Description, Discovery and Integration
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.), UDDI Universal Discovery, Description and Integration : Spécification en langage XML d'un catalogue des services offerts par les entreprises sur leurs sites Web. Lancée par Ariba, IBM et Microsoft, l'initiative UDDI doit permettre à un logiciel de reconnaître automatiquement les services dont il a besoin et de s'interfacer avec eux. Le catalogue comprendra les adresses et les contacts des entreprises, une classification sectorielle et une description des services proposés. Toutes les spécifications techniques sont fournies sur le site officiel de l'initiative UDDI.
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 Taxonomie : Classification d'éléments comme peuvent l'établir les documentalistes. Dans le contexte d'Internet, le terme de taxonomie est associé à des problématiques de gestion de contenu. Certains fournisseurs d'informations tentent de classifier le contenu de sites Web afin de pouvoir fournir les éléments pertinents aux clients intéressés. La taxonomie devient alors un outil de raffinage de l’information, au sens où elle permet de classer le contenu d'un site en différentes sous parties repérées par des mots clés hiérarchisés.
36
Structuration de l’information
37
Annuaires UDDI en ligne
uddi.microsoft.com 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 : Documentations et exemples en ligne : SOAP : Spécification SOAP 1.1 : Spécification SOAP 1.2 : Implémentations : Exemples en ligne : WSDL : Web Services Description Language (WSDL) 1.1 : UDDI : Spécification : Serveur UDDI : et
42
Références personnelles
Web Services
43
MERCI de votre Attention!
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.