Génie Documentiel Delacrétaz Jean-Marc

Slides:



Advertisements
Présentations similaires
LES NOMBRES PREMIERS ET COMPOSÉS
Advertisements

Internet et le client- serveur Licence Pro IE Cours Internet / Intranet Le Web HTML Protocoles Le client universel Contenus dynamiques.
SOA et Services Web Dr. Rim Samia Kaabi 26 mars 2017.
La plateforme.NET 2.0 vue par le développeur Pascal Belaud Microsoft France SAGA.NET
Les systèmes d’informations documentaires et les ENT Éléments de cahier des charges pour les projets nouveaux.
Xavier Blanc Web Services Xavier Blanc
Première expérience d’utilisation des Web Services dans SmartTools Didier Parigot Projet OASIS INRIA Sophia www-sop.inria.fr/oasis/SmartTools Journée.
Projet extranet My.Eolas
Classe : …………… Nom : …………………………………… Date : ………………..
1/32 Forum des utilisateurs du SISMER – Novembre 2005 Le portail NAUTILUS accès en ligne aux données et nouveau site WEB du SISMER Michèle FICHAUT Mickael.
Architectures Orientées Services
Julien HERON.
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod 1 Architectures Orientées Services Composants de Service Exemple pratique de développement.
Stéphanie CLAPIÉ Antoine RENARD
Les webservices Samira Silhadi-Hacid Malika Tarafi.
l'impact sur le eBusiness
ISP/ASP ISP ASP Conclusion DESS Réseaux 2000/2001
Formation au portail SIMBAD
L’architecture .net et ASP.net
Architecture de réseaux
Cours 6 : Les Web Services et UDDI Mars Version 1.0 -
Cours 5 : Les Web Services et WSDL Mars Version 1.0 -
Cours 2 : Les Web Services Concepts Généraux
Les Web Services.
Atelier Portail SAP Durée : 2h.
Plan de formation Chapitre 1 : Présentation de SAP
ESIEE Paris © Denis BUREAU I N Initiation à la programmation avec le langage Java.
JOME, un Composant Logiciel pour le Télé-Enseignement des Mathématiques via le WEB, Compatible OpenMath et MathML Laurent DIRAT OVE / I3S-UNSA.
User management pour les entreprises et les organisations Auteur / section: Gestion des accès.
Mr: Lamloum Med LES NOMBRES PREMIERS ET COMPOSÉS Mr: Lamloum Med.
Introduction aux services WEB
Les Enterprise Service Bus
Interagir avec un objet mixte Propriétés physiques et numériques Céline Coutrix, Laurence Nigay Équipe Ingénierie de lInteraction Homme-Machine (IIHM)
Etude des Technologies du Web services
XML-Family Web Services Description Language W.S.D.L.
le profil UML en temps réel MARTE
Vuibert Systèmes dinformation et management des organisations 6 e édition R. Reix – B. Fallery – M. Kalika – F. Rowe Chapitre 2 : Les applications fonctionnelles.
1 Guide de lenseignant-concepteur Vincent Riff 27 mai 2003.
Virtual Local Area Network
La voyage de Jean Pierre
Projet poker 1/56. Introduction Présentation de léquipe Cadre du projet Enjeux Choix du sujet 2.
Protocole 802.1x serveur radius
Gestion des bases de données
F Copyright © Oracle Corporation, Tous droits réservés. Créer des programmes avec Procedure Builder.
LES NOMBRES PREMIERS ET COMPOSÉS
Soutenance de stage de fin d’études
An Introduction to distributed applications and ecommerce 1 1 Les services Web, XML et les places de marchés.
Séminaire Service Interoperability on Context Level in Ubiquitous Computing Environments Davide Bazzi IIUF Etude de larticle: Service Interoperability.
Document élaboré à Centrale Paris par Pascal Morenton LES TECHNOLOGIES DU WEB 1. LES PHASES D UN DEPLOIEMENT DE RESEAUX 2. LE LANGAGE HTML 3. LE LANGAGE.
J2EE vs .NET Réaliser par : SEIF ENNACER BADRA && CHETOUI RIM.
Enseignant de cours : M. Bouzguenda Lotfi
Initiation au web dynamique
LA GESTION COLLABORATIVE DE PROJETS Grâce aux outils du Web /03/2011 Académie de Créteil - Nadine DUDRAGNE 1.
JEE 5 F.Pfister 2 institut eerie JEE – Une plateforme serveur  Développement et exécution d'applications réparties.
‘‘Open Data base Connectivity‘‘
Introduction.
Internet et le client- serveur Licence Pro IE Cours Internet / Intranet Le Web HTML Protocoles Le client universel Contenus dynamiques.
CENTRALISATION DES CANDIDATS LOCATAIRES
1 Architecture orientée service SOA Architecture orientée service SOA (Service Oriented Architecture)
Outil de gestion des cartes grises
Présentation Finale Spirit 07 / 03 / 2011 Groupe Vert 1 Equipe Verte.
Le web service
Mastère Professionnel Systèmes de Communication et Réseaux
Développement d’application Web.  Internet  WWW  Client/Serveur  HTTP.
Representational State Transfer - REST
21/02/2003DEA DISIC 1 Grid Computing Programming the grid: Distributed Software Components, P2P and Grid Web Services for Scientific Applications Tarak.
Web Services 17/01/2009.
Introduction aux technologies des web services en Java EE
SOAP et les RPC XML SOAP WSDL RPC. Rappels sur le XML Langage avec des balises Très lisible Pour stocker des données Séparation entre contenu et présentation.
Transcription de la présentation:

Génie Documentiel Delacrétaz Jean-Marc Web Services Génie Documentiel Delacrétaz Jean-Marc

Sommaire Généralités Exemples et architecture Les standards Conclusion SOAP WSDL UDDI Conclusion Références

Web services Généralités

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 (http://encyclopedie.journaldunet.com) 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.

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.

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.

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

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

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.

Exemples et architecture Web services Exemples et architecture

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.

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

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

Schématiquement

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.

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

Services Web : vue générale

SOAP : Simple Object Access Protocol Web services SOAP : Simple Object Access Protocol

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

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)

Types de message SOAP SOAP définit trois types de message Appel (Call) – obligatoire Réponse (Response) – optionnel Erreur (Fault) - optionnel

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

Message SOAP encapsulé dans une requête HTTP

Message SOAP encapsulé dans une requête HTTP

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

WSDL : Web Services Description Language

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.

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>

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.

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.

Conclusion WSDL Avantages Inconvénient Description de services assez simple Facile à interroger sur l’Internet Extensible Inconvénient Peu de fonctionnalités offertes

UDDI : Universal Description, Discovery and Integration Web services UDDI : Universal Description, Discovery and Integration

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.

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

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.

Structuration de l’information

Annuaires UDDI en ligne uddi.microsoft.com www.ibm.com/services/uddi uddi.hp.com uddittest.sap.com ...

Web Services Conclusion

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

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

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

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

MERCI de votre Attention!