Télécharger la présentation
Publié parBenjamine Leriche Modifié depuis plus de 10 années
1
Web Services HTTP UDDI SOAP WSDL Besnik SELJIMI, Novembre 2003
Master 2, Génie Informatique Option Systèmes Répartis et Réseaux HTTP UDDI WSDL SOAP
2
Plan HTTP UDDI SOAP WSDL Introduction Définition des Web Services
Le protocole SOAP Le langage WSDL Le référentiel UDDI Programmation des Web Services Transactions et sécurité Conclusion & Questions HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
3
Que veut dire « Web Services »
Pas de définition officielle Service offert sur le web Service offert aux personnes Service aux entreprises HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
4
Historique HTTP UDDI SOAP WSDL Fin 90 : « dot coms », B2B, B2C.
Enormes sommes mises en jeu. 2000 : Fin de la bulle spéculative de vente sur Internet. Mais, B2B a fait son chemin. Recyclage des technologies. Collaboration Microsoft, IBM, HP, Oracle, BEA. 2002 : Consortium (B2B, B2C). Standard pour « Web Services ». HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
5
Plan HTTP UDDI SOAP WSDL Introduction Définition des Web Services
Le protocole SOAP Le langage WSDL Le référentiel UDDI Programmation des Web Services Transactions et sécurité Conclusion & Questions HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
6
Définition des Web Services
Echange d’informations entre applications via le Web Mise en place : Communication Protocole Echange d’Informations Format Précis Description des services Publication et recherche des services W3C : HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
7
Format de données HTTP UDDI SOAP WSDL XML s’impose
Souplesse Simplicité N’importe quelle information Largement utilisé dans les entreprises Outils nombreux, même gratuits Choix des consortiums : exemple configuration J2EE SOAP (Simple Object Access Protocol) HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
8
Protocole de communication
Rien qui est imposé Mais HTTP recommandé Largement accepté Capacité de nombreux échanges Tolérance aux fautes Adapté pour les textes (XML) Intégration avec les firewall SMTP en option HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
9
Utilisation des Web Services
UDDI 1: Inscription 2: Recherche de service 3: Description WSDL 5: Requête SOAP 7: Réponse SOAP 4: Construction requête 6: Traitement HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
10
Résumé : Web Services HTTP UDDI SOAP WSDL Communication : SOAP/HTTP
Description : WSDL Publication et Recherche : UDDI HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
11
Plan HTTP UDDI SOAP WSDL Introduction Définition des Web Services
Le protocole SOAP Le langage WSDL Le référentiel UDDI Programmation des Web Services Transactions et sécurité Conclusion & Questions HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
12
Le protocole SOAP HTTP UDDI SOAP WSDL Web Services XML Requête SOAP
Réponse SOAP Bus Web Services HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
13
Le protocole SOAP HTTP UDDI SOAP WSDL
Format XML. Grammaire publique du W3C Enveloppe SOAP : élément racine Enveloppe SOAP En-tête facultatif Corps de message HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
14
Le protocole SOAP HTTP UDDI SOAP WSDL Web Services
Besnik SELJIMI, 2003
15
Le protocole SOAP HTTP UDDI SOAP WSDL L’élément Fault faultcode :
DataEncodingUnknown DTDNotSupported mustUnderstand Receiver Sender versionMismatch faultstring faultactor detail HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
16
Le protocole SOAP HTTP UDDI SOAP WSDL Web Services
Besnik SELJIMI, 2003
17
Le protocole SOAP HTTP UDDI SOAP WSDL
Les attachements : Données non textuelles Partie de message MIME Message MIME Message SOAP Contenu binaire HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
18
Le protocole SOAP HTTP UDDI SOAP WSDL Le champ SOAP Action
En-tête HTTP Spécifie l’action à faire : URI HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
19
Plan HTTP UDDI SOAP WSDL Introduction Définition des Web Services
Le protocole SOAP Le langage WSDL Le référentiel UDDI Programmation des Web Services Transactions et sécurité Conclusion & Questions HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
20
Le langage WSDL HTTP UDDI SOAP WSDL Nécessité de décrire :
Quel actions sont possibles Quel message envoyer Quel message recevoir WSDL (Web Services Description Language) C’est du XML Dernière version : 1.2 HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
21
Le langage WSDL HTTP UDDI SOAP WSDL Élément message
requêtes et réponses HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
22
Le langage WSDL HTTP UDDI SOAP WSDL Élément portType Web Services
Besnik SELJIMI, 2003
23
Le langage WSDL HTTP UDDI SOAP WSDL Élément binding Web Services
Besnik SELJIMI, 2003
24
Le langage WSDL HTTP UDDI SOAP WSDL Élément service Web Services
Besnik SELJIMI, 2003
25
Plan HTTP UDDI SOAP WSDL Introduction Définition des Web Services
Le protocole SOAP Le langage WSDL Le référentiel UDDI Programmation des Web Services Transactions et sécurité Conclusion & Questions HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
26
Le référentiel UDDI HTTP UDDI SOAP WSDL
UDDI (Universal Description, Discovery and Integration) Un Web Service HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
27
Le référentiel UDDI HTTP UDDI SOAP WSDL Caractéristiques
Synchronisation entre serveurs Accès SOAP Recherche sur plusieurs critères Référentiels publics – connus d’avance Microsoft : SUN : xml/developers/uddi/ ... Mais, référentiels privés possibles HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
28
Le référentiel UDDI HTTP UDDI SOAP WSDL Web Services
HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
29
Plan HTTP UDDI SOAP WSDL Introduction Définition des Web Services
Le protocole SOAP Le langage WSDL Le référentiel UDDI Programmation des Web Services Transactions et sécurité Conclusion & Questions HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
30
Programmation des Web Services
Deux modes de programmation RPC Paramètres Ordre sur l’apparition des paramètres Type de retour Mécanisme d’encodage / décodage des paramètres Document / Modèle message Transport de documents XML Coté Java JAX-RPC (Java API for XML RPC) JAXM (Java API for XML Messaging) HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
31
Programmation des Web Services
L’API JAX-RPC Informations nécéssaires Nom du service BabelFishService Nom de l’opération BabelFish Nom du port BabelFishPortType URL du point d’accès Namespace Paramètres d’entrée translationmode(String) : mode de traduction sourcedate(String) : texte à traduire Paramètres de sortie Return(String) : résultat de la traduction HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
32
Programmation des Web Services
L’API JAX-RPC Création du service ServiceFactory factory = ServiceFactory.newInstance(); Service service = factory.createService(new QName(_service)); Création d’un objet Call Call call = service.createCall(new QName(_port)); Préparation de la requête call.setTargetEndpointAddress(_endpoint); call.setOperationName(new QName(_namespace,_operation)); call.setProperty("javax.xml.rpc.encodingstyle.namespace.url« , NamespaceConstants.NSURI_SOAP_ENCODING); HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
33
Programmation des Web Services
L’API JAX-RPC Type de retour call.setReturnType(XMLType.XSD_STRING) Paramètres d’entrée call.addParameter("translationtype", XMLType.XSD_STRING, ParameterMode.IN); call.addParameter("sourcedata", XMLType.XSD_STRING, ParameterMode.IN); String[] params = {"EnToFr", "Hello world !"} Invocation String traduction = (String) call.invoke(params); System.out.println(traduction); HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
34
Programmation des Web Services
L’API JAX-RPC Types complexes Sérialisation de classes java <personne> <nom>Dupont</nom> <prenom>Jacques</prenom> </personne> Public class Personne { private String _nom; private String _prenom; public void setnom(String value){ _nom = value; } public String getnom(){ return _nom; … HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
35
Programmation des Web Services
L’API JAXM Mode document / message Transport de données XML Requête/réponse Oneway messaging Peut s’utiliser en asynchrone Coté serveur Serveur web : exemple EJB, servlets HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
36
Plan HTTP UDDI SOAP WSDL Introduction Définition des Web Services
Le protocole SOAP Le langage WSDL Le référentiel UDDI Programmation des Web Services Transactions et sécurité Conclusion & Questions HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
37
Transactions HTTP UDDI SOAP WSDL B2B, B2C Cohérence et Sécurité
Etat initial Etat final aborted commit HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
38
Transactions HTTP UDDI SOAP WSDL
ACID : Atomicité, Cohérence, Isolation et Durabilité Environnement reparti Participant Coordinateur Phase de concertation Ready Prepare Prepare Ready Participant Coordinateur Phase de validation Ok Commit Commit Ok HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
39
Transactions HTTP UDDI SOAP WSDL Applications Les Web Services
OTS (Object Transaction Service) : CORBA JTS (Java Transaction Service) : EJB MTS (Microsoft Transaction Service) : DCOM Les Web Services Blocage : Pas de verrouillage des données Services dispersés Temps de latence élevé Pas de confiance entre participants HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
40
Transactions HTTP UDDI SOAP WSDL BTP (Business Transaction Protocol)
BEA, Consortium OASIS : Propriétés ACID non respectés Relâchement des verrous, compensation Un participant peut abandonner WS-Transaction BEA, IBM et Microsoft Basé sur WS-Coordination HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
41
Sécurité HTTP UDDI SOAP WSDL
Utilisation de SSL / TLS pour le transport XML Signature Signature et certificat apparaissent dans le document XML Pas de gestion des droits d’accès XKMS (XML Key Management System) Proposée par VeriSign Retenue par W3C Utilisation gratuite HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
42
Sécurité HTTP UDDI SOAP WSDL WS-Security Identité unique
Etendre le protocole SOAP Authentification, confidentialité, intégrité Jetons de sécurité Identité unique Microsoft Passport Centralisation, Monopole Le projet « Liberty Alliance » Open Source Système reparti HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
43
Plan HTTP UDDI SOAP WSDL Introduction Définition des Web Services
Le protocole SOAP Le langage WSDL Le référentiel UDDI Programmation des Web Services Transactions et sécurité Conclusion & Questions HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
44
Conclusions HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
45
Quelques liens … HTTP UDDI SOAP WSDL http://www.w3c.org/2002/ws/
HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
46
Questions ? HTTP UDDI WSDL SOAP Web Services Besnik SELJIMI, 2003
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.