Description et Annuaire pour les Web Services WSDL & UDDI



Documents pareils
Méthodes et Langages du Commerce Electronique

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

Introduction aux «Services Web»

Les services web. Plan. Définitions et généralités Architecture et technologies au cœur des services web

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

Programmation Web Avancée Introduction aux services Web

Instructions Mozilla Thunderbird Page 1

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

UNIVERSITÉ DU QUÉBEC EN OUTAOUAIS

Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite.

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

BPEL Orchestration de Web Services

VTP. LAN Switching and Wireless Chapitre 4

EN UNE PAGE PLAN STRATÉGIQUE

Academic Project. B2- Web Development. Resit Project. Version 1.0 Last update: 24/05/2013 Use: Students Author: Samuel CUELLA

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

Practice Direction. Class Proceedings

Institut français des sciences et technologies des transports, de l aménagement

Frequently Asked Questions

Les Services Web. Jean-Pierre BORG EFORT

How to Login to Career Page

SHAREPOINT PORTAL SERVER 2013

APPENDIX 2. Provisions to be included in the contract between the Provider and the. Holder

Web Application Models

RAPID Prenez le contrôle sur vos données

MELTING POTES, LA SECTION INTERNATIONALE DU BELLASSO (Association étudiante de lʼensaparis-belleville) PRESENTE :

Formulaire d inscription (form also available in English) Mission commerciale en Floride. Coordonnées

4. SERVICES WEB REST 46

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

Tier 1 / Tier 2 relations: Are the roles changing?

Gestion des prestations Volontaire

The new consumables catalogue from Medisoft is now updated. Please discover this full overview of all our consumables available to you.

DOCUMENTATION MODULE BLOCKCATEGORIESCUSTOM Module crée par Prestacrea - Version : 2.0

ENOVIA 3DLive. IBM PLM Solutions 1 er Octobre Philippe Georgelin Sébastien Veret

Application Form/ Formulaire de demande

Contents Windows

Cedric Dumoulin (C) The Java EE 7 Tutorial

Jean-Philippe VIOLET Solutions Architect

We Generate. You Lead.

Acce s aux applications informatiques Supply Chain Fournisseurs

WEB page builder and server for SCADA applications usable from a WEB navigator

DOCUMENTATION - FRANCAIS... 2

La solution idéale de personnalisation interactive sur internet

- Couches - Éléments - Domaines - ArchiMate et les techniques du BABOK

SCHOLARSHIP ANSTO FRENCH EMBASSY (SAFE) PROGRAM APPLICATION FORM

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

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

RULE 5 - SERVICE OF DOCUMENTS RÈGLE 5 SIGNIFICATION DE DOCUMENTS. Rule 5 / Règle 5

Qualité et ERP CLOUD & SECURITY (HACKING) Alireza MOKHTARI. 9/12/2014 Cloud & Security

Plan. Department of Informatics

Le cadre des Web Services Partie 1 : Introduction

Quatre axes au service de la performance et des mutations Four lines serve the performance and changes

HSCS 6.4 : mieux appréhender la gestion du stockage en environnement VMware et service de fichiers HNAS Laurent Bartoletti Product Marketing Manager

Instructions pour mettre à jour un HFFv2 v1.x.yy v2.0.00

Extension fonctionnelle d un CRM. CRM étendu >> Conférence-débat 15 April Club Management des Systèmes d Information de l'iae de Paris Alumni

MANAGEMENT SOFTWARE FOR STEEL CONSTRUCTION

If the corporation is or intends to become a registered charity as defined in the Income Tax Act, a copy of these documents must be sent to:

UML : Unified Modeling Language

DOCUMENTATION - FRANCAIS... 2

AOC Insurance Broker Compare vos Assurances Santé Internationale Economisez jusqu à 40 % sur votre prime

L offre décisionnel IBM. Patrick COOLS Spécialiste Business Intelligence

La diffusion du Registre du Commerce et des Sociétés en France

Monitor LRD. Table des matières

SAP Runs SAP Reporting Opérationnel & BI avec HANA et SAP Analytics. Pierre Combe, Enterprise Analytics Juin, 2015

Architectures n-tiers et déploiement d applications Web

Contrôle d'accès Access control. Notice technique / Technical Manual

Règlement sur le télémarketing et les centres d'appel. Call Centres Telemarketing Sales Regulation

UN PEU DE VOTRE CŒUR EST TOUJOURS À LYON... A PIECE OF YOUR HEART IS FOREVER IN LYON...

Critères à l attention des fabricants et des fournisseurs de biens ou de services : dispositifs mécaniques pour bingo

calls.paris-neuroscience.fr Tutoriel pour Candidatures en ligne *** Online Applications Tutorial

Services web & E-Commerce. David DABOUÉ - daboueda@iro.umontreal.ca Mars 2006

SERVEUR DÉDIÉ DOCUMENTATION

Lesson Plan Physical Descriptions. belle vieille grande petite grosse laide mignonne jolie. beau vieux grand petit gros laid mignon

et Active Directory Ajout, modification et suppression de comptes, extraction d adresses pour les listes de diffusion

Vanilla : Virtual Box

LE FORMAT DES RAPPORTS DU PERSONNEL DES COMMISSIONS DE DISTRICT D AMENAGEMENT FORMAT OF DISTRICT PLANNING COMMISSION STAFF REPORTS

Paxton. ins Net2 desktop reader USB

Once the installation is complete, you can delete the temporary Zip files..

OpenPaaS Le réseau social d'entreprise

CLOUD COMPUTING et Relation Client/Fournisseur Une Révolution culturelle?

Utiliser une WebCam. Micro-ordinateurs, informations, idées, trucs et astuces

Présentation par François Keller Fondateur et président de l Institut suisse de brainworking et M. Enga Luye, CEO Belair Biotech

L Art d être Numérique. Thierry Pierre Directeur Business Development SAP France

Atelier Progress Rollbase

Power BI 365. #SPSParis E05 Isabelle Van Campenhoudt Jean-Pierre Riehl 30 Mai 2015 / May 30 th, 2015

Get Instant Access to ebook Cest Maintenant PDF at Our Huge Library CEST MAINTENANT PDF. ==> Download: CEST MAINTENANT PDF

PLM 2.0 : Mise à niveau et introduction à l'offre version 6 de Dassault systèmes

Telecharger gratuitement convertisseur de fichier word en pdf

Paris Airports - Web API Airports Path finding

Conférence Bales II - Mauritanie. Patrick Le Nôtre. Directeur de la Stratégie - Secteur Finance Solutions risques et Réglementations

en SCÈNE RATIONAL Rational Démonstration SDP : automatisation de la chaîne de développement Samira BATAOUCHE sbataouche@fr.ibm.com

Forthcoming Database

Outils d'analyse de la sécurité des réseaux. HADJALI Anis VESA Vlad

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

eprocurement Bernard Longhi SC PDA eproc Domain Coordinator CEN/eBES Chair CLEEP French National Forum Chair Geneva, 21 April 2015

Phone Manager Soutien de l'application OCTOBER 2014 DOCUMENT RELEASE 4.1 SOUTIEN DE L'APPLICATION

Microsoft Technopoche

Transcription:

Description et Annuaire pour les Web Services WSDL & UDDI Didier DONSEZ Université Joseph Fourier (Grenoble 1) IMAG Didier.Donsez@imag.fr

3 WSDL & UDDI WSDL Web Services Description Language Description de Services Web http://www.w3c.org UDDI Universal Description, Discovery and Integration Registre/Annuaire global de Services Web http://www.uddi.org

WSDL Web Services Description Language

5 WSDL Spécification (09/2000) Ariba, IBM, Microsoft TR W3C v1.1 (25/03/2001) Objectifs Décrire les services comme un ensemble d opérations et de messages abstraits relié (bind) à des protocoles et des serveurs réseaux Grammaire XML (schema XML) Modulaire (import d autres documents WSDL et XSD)

Éléments d une définition WSDL 6 <types> Contient les définition de types utilisant un système de typage (comme XSD). <message> Décrit les noms et types d un ensemble de champs à transmettre Paramêtres d une invocation, valeur du retour, <porttype> Décrit un ensemble d opérations. Chaque opération a zero ou un message en entrée, zero ou plusieurs message de sortie ou de fautes <binding> Spécifie une liaison d un <porttype> à un protocole concret (SOAP1.1, HTTP1.1, MIME, ). Un porttype peut avoir plusieurs liaisons! <port> Spécifie un point d entrée (endpoint) comme la combinaison d un <binding> et d une adresse réseau. <service> Une collection de points d entrée (endpoint) relatifs.

Élément <types> 7 Contient les définition de types utilisant un système de typage (comme XSD). Exemple <!-- type defs --> <types> <xsd:schema targetnamespace="urn:xml-soap-address-demo" xmlns:xsd="http://www.w3.org/1999/xmlschema"> <xsd:complextype name="phone"> <xsd:element name="areacode" type="xsd:int"/> <xsd:element name="exchange" type="xsd:string"/> <xsd:element name="number" type="xsd:string"/> </xsd:complextype> <xsd:complextype name="address"> <xsd:element name="streetnum" type="xsd:int"/> <xsd:element name="streetname" type="xsd:string"/> <xsd:element name="city" type="xsd:string"/> <xsd:element name="state" type="xsd:string"/> <xsd:element name="zip" type="xsd:int"/> <xsd:element name="phonenumber" type="typens:phone"/> </xsd:complextype> </xsd:schema> </types>

8 Élément <message> Décrit les noms et types d un ensemble de champs à transmettre Paramêtres d une invocation, valeur du retour, Exemple <!-- message declns --> <message name="addentryrequest"> <part name="name" type="xsd:string"/> <part name="address" type="typens:address"/> </message> <message name="getaddressfromnamerequest"> <part name="name" type="xsd:string"/> </message> <message name="getaddressfromnameresponse"> <part name="address" type="typens:address"/> </message>

9 Element <porttype> Décrit un ensemble d opérations. Plusieurs types d opérations One-way Le point d entrée reçoit un message (<input>). Request-response Le point d entrée reçoit un message (<input>) et retourne un message corrélé (<output>) ou un ou plusieurs messages de faute (<fault>). Solicit-response Le point d entrée envoie un message (<ouput>) et recoit un message corrélé (<input>) ou un ou plusieurs messages de faute (<fault>). Notification Paramêtres Binding HTTP : 2 requêtes HTTP par exemple Le point d entrée envoie un message de notification (<ouput>) Les champs des messages constituent les paramêtres (in,out, inout) des opérations

10 Element <porttype> Exemple <!-- port type declns --> <porttype name="addressbook"> <! One way operation --> <operation name="addentry"> <input message="addentryrequest"/> </operation> <! Request-Response operation --> <operation name="getaddressfromname"> <input message="getaddressfromnamerequest"/> <output message="getaddressfromnameresponse"/> </operation> </porttype>

Élément <binding> 11 Spécifie une liaison d un <porttype> à un protocole concret (SOAP1.1, HTTP GET/POST, MIME, ). Un porttype peut avoir plusieurs liaisons! Exemple de binding sur SOAP et HTTP <!-- binding declns --> <binding name="addressbooksoapbinding" type="addressbook"> <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/> <operation name="addentry"> <soap:operation soapaction=""/> <input><soap:body use="encoded" namespace="urn:addressfetcher2" encodingstyle="http://schemas.xmlsoap.org/soap/encoding/"/> </input> <output><soap:body use="encoded" namespace="urn:addressfetcher2" encodingstyle="http://schemas.xmlsoap.org/soap/encoding/"/> </output> </operation> <operation name="getaddressfromname"> <soap:operation soapaction=""/> <input><soap:body use="encoded" namespace="urn:addressfetcher2" encodingstyle="http://schemas.xmlsoap.org/soap/encoding/"/></input> <output><soap:body use="encoded" namespace="urn:addressfetcher2" encodingstyle="http://schemas.xmlsoap.org/soap/encoding/"/></output> </operation> </binding>

Élément <binding> 12 Exemple de binding avec SOAP et SMTP <definitions...> <types> <schema targetnamespace="http://stockquote.com/stockquote.xsd" xmlns="http://www.w3.org/2000/10/xmlschema"> <element name="subscribetoquotes"> <complextype><all><element name="tickersymbol" type="string"/></all></complextype> </element> <element name="subscriptionheader" type="urireference"/> </schema> </types> <message name="subscribetoquotes"> <part name="body" element="xsd1:subscribetoquotes"/> <part name="subscribeheader" element="xsd1:subscriptionheader"/> </message> <porttype name="stockquoteporttype"> <operation name="subscribetoquotes"> <input message="tns:subscribetoquotes"/> </operation> </porttype>

13 Élément <binding> <binding name="stockquotesoap" type="tns:stockquoteporttype"> <soap:binding style="document" transport="http://stockquote.com/smtp"/> <operation name="subscribetoquotes"> <input message="tns:subscribetoquotes"> <soap:body parts="body" use="literal"/> <soap:header message="tns:subscribetoquotes" part="subscribeheader" use="literal"/> </input> </operation> </binding> <service name="stockquoteservice"> <port name="stockquoteport" binding="tns:stockquotesoap"> <soap:address location="mailto:subscribe@stockquote.com"/> </port> </service> </definitions>

Élément <service> 14 Une collection de points d entrée (endpoint) relatifs Exemple <?xml version="1.0"?> <definitions name="urn:addressfetcher" targetnamespace="urn:addressfetcher2" xmlns:typens="urn:xml-soap-address-demo" xmlns:xsd="http://www.w3.org/1999/xmlschema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns="http://schemas.xmlsoap.org/wsdl/"> <!-- service decln --> <service name="addressbookservice"> <port name="addressbook" binding="addressbooksoapbinding"> <soap:address location="http://www.mycomp.com/soap/servlet/rpcrouter"/> </port> </service> </definitions>

16 Outils Générateur WSDL à partir de déploiement SOAP ou EJB, Générateur de proxy SOAP à partir de WSDL, Toolkit IBM Web Services Toolkit Outils + demo-tutorial Gourmet2GO

UDDI Universal Description, Discovery and Integration

18 UDDI Spécification (09/2000) Ariba, IBM, Microsoft +260 autres sociétés Objectifs annuaire mondial d'entreprises pour permettre d'automatiser les communications entre prestataires, clients, etc. plusieurs entrées indéxées : nom, carte d'identité des sociétés, description des produits, services, services applicatifs invocables à distance (références des connexions) Indéxation des catalogues propriétaires (ebxml, RosettaNet, Ariba, Commerce One, etc.) Grammaire XML (schema XML) Soumission/intérogation basé sur SOAP et WSDL

19 What is UDDI? A project to speed interoperability and adoption for web services Standards-based specifications for service description and discovery Shared operation of a business registry on the web Partnership among industry and business leaders Universal Description, Discovery, and Integration

What Problems Do We Solve? 20 Broader B2B A mid-sized manufacturer needs to create 400 online relationships with customers, each with their own set of standard and protocols Describe Services Smarter Search Easier Aggregation A flower shop in Australia wants to be plugged in to every marketplace in the world, but doesn t know how A B2B marketplace cannot get catalog data for relevant suppliers in its industry, along with connections to shippers, insurers, etc. Discover Services Integrate Them Together

21 UDDI v1 Implementation Manufacturers Flower Shops Marketplaces UDDI Business Registry Programmatic descriptions of web services Programmatic descriptions of businesses and the services they support Programming model, schema, and platform agnostic Uses XML, HTTP, and SOAP Free on the Internet

How UDDI v1 Works 22 1. 2. SW companies, standards bodies, and programmers populate the registry with descriptions of different types of services UDDI Business Registry 4. Marketplaces, search engines, and business apps query the registry to discover services at other companies Businesses populate the registry with descriptions of the services they support 3. Business Registrations Segrvice Type Reistrations UBR assigns a programmatically unique identifier to each service and business registration 5. Business uses this data to facilitate easier integration with each other over the Web

Registry Data 23 Businesses register public information about themselves White Pages Yellow Pages Standards bodies, Programmers, Businesses register information about their Service Types Green Pages Service Type Registrations

24 White Pages Business Name Text Description list of multi-language text strings Contact info names, phone numbers, fax numbers, web sites Known Identifiers list of identifiers that a business may be known by - DUNS, Thomas, other

25 Yellow Pages Business categories 3 standard taxonomies in V1 Industry: NAICS (Industry codes - US Govt.) Product/Services: UN/SPSC (ECMA) Location: Geographical taxonomy Implemented as name-value pairs to allow any valid taxonomy identifier to be attached to the business white page

26 Green Pages New set of information businesses use to describe how to do e-commerce with them Nested model Business processes Service descriptions Binding information Programming/platform/implementation agnostic Services can also be categorized

27 Service Type Registration Pointer to the namespace where service type is described What programmers read to understand how to use the service Identifier for who published the service Identifier for the service type registration called a tmodelkey Used as a signature by web sites that implement those services

Business Registration 28 XML document Created by end-user company (or on their behalf) Can have multiple service listings Can have multiple taxonomy listings businessentity businesskey name URL description contacts businessservices identifierbag categorybag keyedreference keyedreference tmodelkey tmodelkey keyname keyname keyvalue keyvalue Contact Contact Phone Phone Address Address Email Email businessservice Key servicekey Name tmodelkey Description Name BindingTemplates Description BindingTemplates keyedreference keyedreference tmodelkey tmodelkey keyname keyvalue keyname keyvalue

Example of a Registration 29 businessentity TB993 Harbour Metals www.harbourmetals.co.au Serving Inner Sydney Harbour for contacts businessservices identifierbag categorybag Peter Smythe 872-6891 4281 King s Blvd, Sydney, NSW Peter@harbourmetals.co.au businessservice businessservice Key 23T701e54683nf Name Online catalog Description Website where you can BindingTemplates keyedreference EE123 NAICS 02417 keyedreference DFE-2B DUNS 45231 tmodelkeys BindingTemplate 5E2D412E5-44EE- http://www.sydneynet/harbour tmodelinstancedetails tmodelinstanceinfo 4453D6FC-223C-3ED0 http://www.rosetta.net/catalogpip

30 UDDI at Work 1. SydneyNet.com Harbour Metals creates online website with local ASP 2. UDDI Registry 4. Consumers and businesses discover Harbour Metals and do business with it 3. ASP registers Harbour Metals with UBR Marketplaces and search engines query UBR, cache Harbour Metals data, and bind to its services

31 Registry Operation Peer nodes (websites) Companies register with any node Registrations replicated on a daily basis IBM queries Complete set of registered records available at all nodes Common set of SOAP APIs supported by all nodes other UDDI.org Ariba Compliance enforced by business contract other Microsoft

32 Why a DNS-like Model? Enforces cross-platform compatibility across competitor platforms Demonstration of trust and openness Avoids tacit endorsement of any one vendor s platform May migrate to a third party

UDDI and SOAP 33 User UDDI SOAP Request UDDI SOAP Response UDDI Registry Node HTTP Server SOAP Processor UDDI Registry Service Create, View, Update, and Delete registrations B2B Directory Implementationneutral

34 Registry APIs (SOAP Messages) Inquiry API Find things find_business find_service find_binding find_tmodel Get Details about things get_businessdetail get_servicedetail get_bindingdetail get_tmodeldetail Publishers API Save things save_business save_service save_binding save_tmodel Delete things delete_business delete_service delete_binding delete_tmodel security get_authtoken discard_authtoken

UDDI Roadmap 35 V1 V2 V3 Ongoing Business Units Corporations Associations 3 Taxonomies Descriptions of Services More Taxonomies Layered Services Custom Taxonomies Workflow Sept 2000 March 2001 December 2001 Standards Body

36 Le modèle de données v1 UML

37 Summary Significant effort that unites existing standards with a shared implementation Open process with clear roadmap to a standards body Industry momentum

40 Bibliographie et Webographie Web Services Philippe Mougin, Christophe Barriolade, Web Services, Business Objects and Component Models, WhitePaper Orchestral Networks, July 2001, http://www.orchestranetworks.com/us/solutions/0105_whitepaper.cfm WSDL La spécification du W3C UDDI http://www.w3.org/tr/wsdl http://www.uddi.org http://www.juddi.org Projet UDDI pour Java