Services Web UDDI Serena Villata Luca Costabello Master MIAGE 2 2011/2012



Documents pareils
Services Web publication et découverte

Méthodes et Langages du Commerce Electronique

Introduction aux «Services Web»

Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web»

Programmation Web Avancée Introduction aux services Web

UNIVERSITÉ DU QUÉBEC EN OUTAOUAIS

Sommaire. Introduction La technologie ebxml EDI conventionnels versus ebxml Web Services et ebxml Acteurs de l ebxml Conclusion

On Feature Interaction among Web Services Michael Weiss et Babak Esfandiari

From supply chain to demand chain

Urbanisme du Système d Information et EAI

Web Services : Beyond the peer-to-peer architecture

Les Web Services. Rapport de TE. Étudiants Cyrielle Lablanche Florens Seine Sébastien Gastaud. Encadrant Hervé Chang

Intégration d'applications à "gros grain" Unité d'intégration : le "service" (interface + contrat)

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Le cadre des Web Services Partie 1 : Introduction

Sécurité des Web Services (SOAP vs REST)

Business Process Execution Language

Systèmes d'informations historique et mutations

Systèmes répartis. Fabrice Rossi Université Paris-IX Dauphine. Systèmes répartis p.1/49

Sélection de sérvices Web à base de colonies de fourmis MÉMOIRE DE FIN D'ÉTUDE. Melle CHEMIDI Zoulikha. Jury

SOAP Concepts Application à Glassfish

Problématiques de recherche. Figure Research Agenda for service-oriented computing

PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES

RELEASE NOTES. Les nouveautés Desktop Manager 2.8

Java Naming and Directory Interface

Les services Web. Jeremy Fierstone fierston@essi.fr. SAR5 Novembre 2002

Les nouvelles architectures des SI : Etat de l Art

République Algérienne Démocratique et Populaire Université Abou Bakr Belkaid Tlemcen Faculté des Sciences Département d Informatique

Les Services Web. Jean-Pierre BORG EFORT

Urbanisation des SI. Des composants technologiques disponibles. Urbanisation des Systèmes d'information Henry Boccon Gibod 1

JOnAS Day 5.1. Clustering

Chapitre 2 : Abstraction et Virtualisation

Introduction à la conception de systèmes d information

La démarche SOA et l interopérabilité applicative

GRIDKIT: Pluggable Overlay Networks for Grid Computing

XML, PMML, SOAP. Rapport. EPITA SCIA Promo janvier Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

GLOSSAIRE. On premise (sur site)

Présentation Alfresco

L Orchestration de Services Web avec Orchestra. Goulven Le Jeune Orchestra Project Manager

Manuel d intégration API SOAP SMS ALLMYSMS.COM

Point sur les solutions de développement d apps pour les périphériques mobiles

COMPRENDRE L ARCHITECTURE DES WEB SERVICES REST. Amosse EDOUARD, Doctorant

Conception Exécution Interopérabilité. Déploiement. Conception du service. Définition du SLA. Suivi du service. Réception des mesures

Approche Contract First

La Stratégie d Intégration Advantage

Machine virtuelle Java pour Palm TX

4. SERVICES WEB REST 46

e-business, EAI et Business Intelligence Le triptyque gagnant profondément les structures des organisations et par conséquence

Introduction aux. services web 2 / 2

WEBSERVICES. Michael Fortier. Master Informatique 2ème année. A308, Université de Paris 13

Utiliser Améliorer Prêcher. Introduction à LDAP

IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL

Urbanisation des Systèmes d'information

Iyad Alshabani SysCom - CReSTIC Université de Reims 17/02/2011 1

Sécurité en MAC OS X [Nom du professeur]

ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ DU QUÉBEC MÉMOIRE PRÉSENTÉ À L ÉCOLE DE TECHNOLOGIE SUPÉRIEURE

Plesk Automation. Questions techniques fréquemment posées

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft

L architecture des services Web

Procédure d Installation et de mise à jour du client CAN-8 32 bits

Annuaires LDAP et méta-annuaires

Composition semi-automatique de Services Web

Groupe Eyrolles, 2004 ISBN :

J2EE - Introduction. Développement web - Java. Plan du chapitre

Les formations. Administrateur Systèmes et Réseaux. ENI Ecole Informatique

La gouvernance SOA Ses aspects théoriques et pratiques

Urbanisation des SI Conduite du changement IT 20/03/09. Patrick CHAMBET

Implémentation libre de Liberty Alliance. Frédéric Péters

Description du programme du Master M2 MIAGE SIIN (1)

AGENDA. Introduction à l'intégration ERP (Enterprise Resource Planning) 3 EAI (Enterprise Application Integration) WS (Web Services) Conclusion

Compte Rendu d intégration d application

Environnements de Développement

PROJET DE TROISIEME ANNEE RAPPORT FINAL ANNEE SCOLAIRE 2002/2003

1. Introduction à la distribution des traitements et des données

Intégration de systèmes

Les Architectures Orientées Services (SOA)

GEI 465 : Systèmes répartis

Composition et interopération des services web sémantiques

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki

Exploration des technologies web pour créer une interaction entre Mahara et les plateformes professionnelles et sociales

NOVA BPM. «Première solution BPM intégr. Pierre Vignéras Bull R&D

L intégration d applications unifiée par les Services Web et XML Réconcilier J2EE.NET EIS et mainframes

Remote Method Invocation en Java (RMI)

Remote Method Invocation (RMI)

Installation Windows 2000 Server

Guide de mise en service - THOMSON ST2030

Extended communication server 4.1 : VoIP SIP service- Administration

Cursus détaillé du MBDS

Evidian IAM Suite 8.0 Identity Management

[Projet S9] Rédacteurs & Contributeurs Entité Rédacteurs Contributeurs Imededdine HOSNI Olivier MARTY. Validation du document Nom Date Visa

RFC 791 (Jon Postel 1981)

Windows 2000 Server Active Directory

Active Directory. Structure et usage

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée Virtual Server de Microsoft

Suite Jedox La Business-Driven Intelligence avec Jedox

Générer du code à partir d une description de haut niveau

Messagerie & Groupeware. augmentez l expertise de votre capital humain

JOnAS 5. Serveur d application d

Transcription:

Services Web UDDI Serena Villata Luca Costabello Master MIAGE 2 2011/2012

Publication et découverte Problèmes classiques des systèmes répartis : - comment indiquer qu un service est disponible - comment découvrir un service Solutions classiques, les annuaires : - le portmapper des RPC : associe un programme (identifié par un numéro) à un port UDP ou TCP permet d obtenir la liste des programmes enregistré - le service de noms de CORBA (COSNaming) : organisé de façon hiérarchique permet d associer un nom à un objet (identifié sous forme d un numéro unique) associé à des services très évolués : découverte et publication dynamique de l interface d un service - le rmiregistry de Java (RMI), même principe que COSNaming (en moins évolué)

Solutions services web La solution principale est UDDI : Universal Description, Discovery, and Integration créé par IBM, Ariba (?) et Microsoft évolution : V1 septembre 2000 V2 juin 2001 V3 juillet 2002 Permet de : publier la description d un service web découvrir les services web disponibles Construit à partir de l infrastructure des services web : données décrites en XML accès par messages SOAP Accès en Java : Java Api for XML Registries

Concepts UDDI UDDI est un annuaire orienté Business il décrit 4 types d entités les businesses (en gros les entreprises) les bunisess services (les services fournis par les entreprises, au sens non technique du terme) les technical models (la description abstraite des services proposés) les service bindings (l implémentation des services) Organisées selon trois méthodes les pages blanches : annuaire classique par nom (sur les entreprises) les pages jaunes : annuaire thématique (organisé selon une taxonomie) les pages vertes : annuaire technique

Evolutions Version 2 - notion de liens entre entreprises (filiales, co-entreprises) - taxonomies plug-ins - internationalisation - recherches évoluées - réplication souple entre noeuds UDDI Version 3 - structure hiérarchique entre les annuaires (à la DNS) - améliorations sur la sécurité (signatures, etc.) - recherches approximatives - mécanisme d abonnement et de notification etc.

Etapes : Enregistrement d un service 1. Couper en deux le fichier WSDL, en séparant la partie abstraite de la partie concrète 2. Enregistrer la partie abstraite comme un technical model (attention, le ne contient pas le WSDL) 3. S enregistrer comme une Business Entity 4. Enregistrer un Business service associant la Business Entity avec le technical model Remarques : - tout est décrit en XML - l idée de base est que le fait référence à la partie abstraite du WSDL (mais ce n est pas obligatoire) - de même, un service binding peut faire référence à la partie concrète

Détails techniques Chaque élément est identifié par un numéro unique (au sein d un annuaire), le UUID (Universally Unique ID) Les UUID sont utilisés pour lier les éléments entre eux (par exemple un avec un ) : la description d une entreprise contient des informations de haut niveau, destinées essentiellement à des humains : nom de l entreprise liste de contacts etc. peut contenir des informations de classification (taxonomie) pour les pages jaunes

Exemple entreprise.xml 1 <businessentity businesskey=""> 2 <discoveryurls> 3 <discoveryurl usetype="wsil"> 4 http://localhost/inspection.wsil 5 </discoveryurl> 6 </discoveryurls> 7 8 <name>dougco Software</name> 9 <description xml:lang="en"> 10 Sample business created for 11 the UDDI discovery demo. 12 </description> 13 14 <contacts> 15 <contact usetype="technical contact"> 16 <personname>doug Tidwell</personName> 17 <phone usetype= 18 "voice">1-919-555-5583</phone> 19 <phone usetype= 20 "fax">1-919-555-2389</phone> 21 <phone usetype= 22 "mobile">1-919-555-9385</phone> 23 <email>dtidwell@us.ibm.com</email>

Exemple (2) entreprise.xml 24 <address> 25 <addressline>1234 Main Street 26 </addressline> 27 <addressline>anytown, TX 73958 28 </addressline> 29 </address> 30 </contact> 31 </contacts> 32 33 <categorybag> 34 <keyedreference keyname= 35 "uddi-org:iso-ch:3166-1999" 36 keyvalue="us-nc" tmodelkey= 37 "UUID: 4E49A8D6-D5A2-4FC2-93A0-38 0411D8D19E88"/> 39 <keyedreferencekeyname= "ntis-gov:naics:1997" 40 keyvalue="541511" tmodelkey= 41 "UUID: C0B9FE13-179F-413D-8A5B-5004DB8E5BB2"/> 42 <keyedreference keyname="unspsc-org:unspsc" 43 keyvalue="43.16.26.05.00" tmodelkey= 44 "UUID: CD153257-086A-4237-B336-6BDCBDCC6634"/> 45 </categorybag> 46 </businessentity>

Détails techniques (2) : description d un service réalise le lien entre une interface de service (un ) et son implémentation, par l intermédiaire de sous-éléments s un se contente de pointer vers une description externe : décrit l interface d un service se contente de pointer vers une description externe Remarques importantes : l annuaire UDDI ne stocke pas les descriptions WSDL l api ne propose pas le téléchargement de ces descriptions UDDI n oblige pas à utiliser WSDL

Exemple service-abstrait.xml 1 <tmodel tmodelkey=""> 2 <name>eightball Interface</name> 3 <description xml:lang="en"> 4 The interface-only definition 5 of the EightBall service. 6 </description> 7 <overviewdoc> 8 <description xml:lang="en"> 9 The mystical powers of the EightBall, channeled into Java. 10 </description> 11 <overviewurl> 12 http://localhost/eightball.org/eightballinterface.wsdl 13 </overviewurl> 14 </overviewdoc> 15 <categorybag> 16 <keyedreference 17 tmodelkey="uuid:c1acf26d-9..." 18 keyname="uddi-org:types" 19 keyvalue="wsdlspec"/> 20 </categorybag> 21 </tmodel>

Exemple service-concret.xml 1 <businessservice servicekey="" 2 businesskey="00eb06fc-3c45-42b8-b394-1 3 F7F35602B2E"> 4 <name>eightballservice</name> 5 <descriptionxml:lang="en"> 6 The power of the MagicEightBall, channelled through code. 7 </description> 8 9 <bindingtemplates> 10 <bindingtemplatebindingkey="" 11 servicekey=""> 12 <descriptionxml:lang="en"> 13 Ties this implementation to the EightBallInterface. 14 </description> 15 <accesspointurltype="http"> 16 http://localhost:8080/axis/services/eightball 17 </accesspoint> 18 <tmodelinstancedetails> 19 <tmodelinstanceinfotmodelkey= 20 "UUID:0B6E1227-329A-4657-89B5-35DA36CA2554"> 21 <descriptionxml:lang="en"> 22 Implementation of the EightBallInterface. 23 </description>

Exemple (2) 24 <instancedetails> 25 <overviewdoc> 26 <overviewurl> 27 http://localhost/eightballimplementation.wsdl 28 </overviewurl> 29 </overviewdoc> 30 </instancedetails> 31 </tmodelinstanceinfo> 32 </tmodelinstancedetails> 33 </bindingtemplate> 34 </bindingtemplates> 35 </businessservice>

Solutions concurrentes/complémentaires UDDI est intéressant comme annuaire global Solution concurrente : ebxml, un standard OASIS (même esprit) Solution complémentaire, WS-Inspection : - idée de base : donner la liste des services web disponibles sun un serveur dialecte XML compatible UDDI : la description d un service peut faire référence à l enregistrement UDDI de celui-ci compatible WSDL : même chose avec WSDL

Exemple inspection.xml 1 <?xml version="1.0"?> 2 <inspection 3 xmlns="http://schemas.xmlsoap.org/ws /2001/10/inspection/" 4 xmlns:wsilwsdl="http://schemas.xmlsoap.org/ws/2001/10/inspection/wsdl/"> 5 <service> 6 <abstract xml:lang="en-us"> 7 WSDL description for the Eight Ball service 8 </abstract> 9 <name xml:lang="en-us">eightball</name> 10 <descriptionreferencednamespace= "http://schemas.xmlsoap.org/wsdl/" 11 location= "http://localhost/eightball.wsdl"/> 12 </service> 13 </inspection>