Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Plan
Principes Besoins pour assurer le web services (SOAP, WSDL, UDDI) Cycle de vie dun web service Tomcat / Axis Exemple de dveloppement dun Web service Conclusion
Dfinition
L'architecture du Web remplace les concepts applicatifs clients et serveurs par les concepts agents et ressources. Les services web traitent donc d'agents ressources l o le mode opratoire classique du Web parle d'agents utilisateurs. Il n'y a donc pas de diffrence fondamentale entre l'interaction d'un navigateur avec une ressource et celle d'un Service Web avec une ressource. La principale diffrence se situe au niveau du format de la reprsentation des donnes: HTML pour les navigateurs ou agents utilisateurs, XML pour les Services Web ou agents ressources...
Dfinition
Les Web Services sont des services offerts via le web. Par exemple, un client demande le prix dun article en envoyant un message sur le web. Ce message contient la rfrence de larticle. Le Web Service va recevoir la rfrence, effectuer le traitement du service et renvoyer le prix au client via un autre message.
Dfinition
un Service Web est l'implmentation logicielle d'une ressource, identifie par une URL, et accessible en utilisant les protocoles internet. Les agents s'occupent du contenu, de la reprsentation de leur tat, pas du type de contenu. Il faut donc voir les Services Web comme le moyen de manipuler l'information, et non comme un simple fournisseur de services.
Service Web
Les Services Web dsignent l'implmentation logicielle des spcifications WS et reposent tous sur un ensemble de protocoles et de standards de base utiliss pour l'change de donnes entre applications dans des environnements htrognes :
1. le SOAP (Simple Object Access Protocol) pour l'change de messages, 2. le WSDL (Web Service Description Language) pour la description : des services web, de leurs oprations, des messages utiliss, des types de donnes utilises, des protocoles utiliss et de leur localisation au sens internet (URI / URL), 3. les annuaires UDDI qui peuvent rfrencer des services web.
Principes
Pourquoi proposer des nouveaux Approches pour le web services
Invocation, visant dcrire la structure des messages changs par les applications. Dcouverte, pour permettre de rechercher et de localiser un service web particulier dans un annuaire de services dcrivant le nom de la socit, l'objectif de chaque service, etc. Description, dont l'objectif est la description des interfaces (paramtres des fonctions, types de donnes) des services web.
= message xml
SOAP
Protocole dchange de messages (client / serveur) Protocole permettant des appels de procdures distances (RPC) Bas sur 2 standards
XML pour bien structure les messages HTTP pour le transport des messages
Message = Enveloppe ( Header + Body ) Port sur HTTP, SMTP,
Concepts
Extensibilit
Dfinition
SOAP
Structure dun message Rgle dencodage des types de donnes Convention de reprsentation des appel de methodes
SOAP
SOAP
HTTP
Extension framework
XML
WSDL
Web Services Description Language
WSDL
Describes the Web Service and defines the functions that are exposed in the Web Service
Defines the XML grammar to be used in the messages
Uses
WSDL
Langage de dfinition de Web Services Bas entirement sur XML Standard W3C (Initiative IBM et Microsoft)
Actuellement
WSDL 1.1
Dfinition de linterface, de lURL et du port du Web Service. Utilise le systme de typage de XML Schma
Prsentation
Une description WSDL :
1.
Dcrit le type dun service web (mthodes, types des paramtres) Cette description peut tre compare la description IDL CORBA, elle peut servir gnrer automatiquement des amorces. Dcrit les aspects techniques dimplantation dun service web (quel est le protocole utilis, quel est ladresse du service) Cette description sert se connecter concrtement un service web.
2.
Un fichier WSDL contient une description de tout ce qui est ncessaire l'appel d'un service Web SOAP :
types: cette balise dcrit les types utiliss message: cette balise dcrit la structure dun message chang portType: cette balise dcrit un ensemble doprations (interface dun service web)
operation: cette balise dcrit une opration ralise par le service web. Une opration reoit des messages et envois des messages.
binding: dcrit le lien entre un protocole (http) et un portType. service: cette balise dcrit un service comme un ensemble de ports.
port: cette balise dcrit un port au travers duquel il est possible daccder un ensemble doprations. Un port rfrence un Binding
UDDI
To allow users to discover a service it is published to a registry (UDDI). To allow users to interact with a service you must publish a description of its interface (methods & arguments). This is done using WSDL.
Once you have published a description of your service you must have a host set up to serve it.
A web server is often used to deliver services (although custom application application communication is also possible). This is functionality which has to be added to the web server. In the case of the apache web server a container application (Tomcat) can be used to make the application (servlet) available to apache (deploying).
Infrastructure
Apache Web Server Serveur d applications TOMCAT (Servlets, JSP) Xerces, API Java de parsing XML API SOAP
Introduction
Servlet est un objet Java qui fonctionne en mode requte/reponse Une Servlet http est une serlvet qui est capable de traiter des requte http et qui est capable de renvoyer des rponses http.
Un moteur (container) de Servlet est une application qui reoit des requtes http et qui les transmet aux Servlet
Tomcat
Axis
Axis fournit une Servlet (AxisServlet) qui reoit des message SOAP sur http et qui transforme lappel en un appel de mthode classique Java Dvelopper un Web Service revient alors dvelopper un objet Java et enregistrer ses mthodes auprs de la Servlet AxisServlet. Les clients envoient alors leurs messages SOAP sur http AxisServlet.
Tomcat
Client
HTTP
APACHE
Services
Tomcat
Client
HTTP
APACHE
XML parser
Services
Enregistrement du fichier WSDL dans lannuaire UDDI pour assurer la dcouverte automatique
Annuaire UDDI
yp wp 2. Enregistrement wsdl wsdl
Tomcat
Client
HTTP
APACHE
XML parser
Services
Dcouverte du service
Annuaire UDDI
wsdl 4. Envoi fichier WSDL yp wp 3. Demande service wsdl
Tomcat
Client
HTTP
APACHE
XML parser
Services
Tomcat
Client
HTTP
APACHE
wsdl
XML parser
Services
Traitement de la demande
Annuaire UDDI
yp wp wsdl
Traitement du service demande Gnration de la rponse
Tomcat
Client
HTTP
APACHE
wsdl
AxisServlet reoit le message du client
XML parser
Services
Tomcat
5. Envoie la rponse
Client
HTTP
APACHE
wsdl
mission de la rponse
XML parser
Services
Exporter le descripteur
java org.apache.axis.client.AdminClient deploy.wsdd
Copy
MyFirstWebService.java //MyFirstWebService.jws
org.apache.axis.wsdl.WSDL2Java file.wsdl
Classes gnres:
Pour
les Type Pour les PortType Pour les Binding Pour les Port Pour les Service
Construction du client :
Instancier
Un exemple de Client
public class Client { public static void main(String[] args) { try { MyFirstWebServiceService service = new MyFirstWebServiceServiceLocator(); MyFirstWebService port = service.getMyFirstWebService(); String st = ""; int price = port.getPrice(st); System.out.println("Le prix est : "+price); } catch (Exception ex) { ex.printStackTrace(); } } }
Rfrences