SlideShare uma empresa Scribd logo
1 de 21
Web Services : SOAP et REST
Réalisé Par: Radhouene Rouached & Maher Abed
Plan
Web service
2
 Définition
 Propriétés & Concepts
SOAP
 Avantage & Inconvénient
 Apache Axis
RESTful
Conclusion
Web Service
« un service est un comportement défini par contrat, qui peut être réalisé et fourni par tout
composant pour être utilisé par tout composant, sur la base unique du contrat».
Service
3
Web Service
Les Web Services sont des composants web basés sur Internet (HTTP ) qui exécutent des
tâches précises et qui respectent un format spécifique (XML).
Ils permettent aux applications de faire appel à des fonctionnalités à distance en
simplifiant ainsi l’échange de données.
Les Web Services permettent aux applications de dialoguer à travers le réseau,
indépendamment de :
◦ leur plate-forme d’exécution
◦ leur langage d'implémentation.
Définition
4
Web service
 Un Service est Autonome
et sans état
5
Propriétés
 Un Service expose un Contrat
 Les Frontières entre services sont
Explicites
 Les services communiquent par
messages
Web service
Le concept des Web Services s’articule actuellement autour des trois concepts suivants :
◦ SOAP (Simple Object Access Protocol)
- Est un protocole d'échange inter-applications indépendant de toute plate-forme, basé sur le langage XML.
- Un appel de service SOAP est un flux ASCII encadré dans des balises XML et transporté dans le protocole HTTP.
◦ WSDL (Web Services Description Language)
- Donne la description au format XML des Web Services en précisant les méthodes pouvant être invoquées, leurs
signatures et le point d’accès (URL, port, etc..).
- C’est, en quelque sorte, l’équivalent du langage IDL pour la programmation distribuée CORBA.
◦ UDDI (Universal Description, Discovery and Integration)
- Normalise une solution d’annuaire distribué de Web Services, permettant à la fois la publication et l'exploration
(recherche) de Web Services.
- UDDI se comporte lui-même comme un Web service dont les méthodes sont appelées via le protocole SOAP.
Concepts des web services
6
Web Service
Principe de fonctionnement
7
◦ Des standards simples (SOAP, WSDL, UDDI)
◦ Multi Protocole / Multi OS / Multi Langage
◦ Facilite l’échange des données
◦ Les outils de développement, s'appuyant sur ces standards, permettent la création
automatique de programmes utilisant les services Web existant.
Avantage
Web service
Avantage
8
◦ Performance: Les services Web souffrent de performances faibles comparée à d'autres
approches de l'informatique répartie telles que le RMI, CORBA, ou DCOM.
◦ Jeunesse (Sécurité, Transaction,…): Les normes de services Web dans certains domaines
sont actuellement récentes
Inconvénient
Web service
Inconvénient
9
SIMPLE OBJECT
ACCESS PROTOCOL
SOAP
10
SOAP
SOAP est un protocole d'invocation de méthodes sur des services distants. Basé sur XML,
SOAP a pour principal objectif d'assurer la communication entre machines.
Le protocole permet d'appeler une méthode RPC et d'envoyer des messages aux machines
distantes via un protocole de transport ( HTTP ).
Objectifs visés
- Assurer la communication entre applications d’une même entreprise (intranet)
- Assurer les échanges interentreprises entre applications et services Web
11
Simple Object Access Protocol
SOAP
12
Structure d'un message SOAP
AXIS
Apache eXtensible Interaction System
13
Apache Axis
Axis est un ensemble de logiciels créés par la fondation Apache (The Apache Software Foundation), qui
vise à faciliter le développement de services Web en technologie SOAP.
Axis offre notamment :
un environnement pouvant soit fonctionner comme un serveur SOAP/Rest indépendant, soit comme
un plug-in de moteurs de servlet (en particulier Tomcat),
une API pour développer des services web SOAP RPC ou à base de messages SOAP,
le support de différentes couches de transport : HTTP, FTP, SMTP, POP et IMAP...,
la sérialisation/désérialisation automatique d'objets Java dans des messages SOAP,
des outils pour créer automatiquement les WSDL correspondant à des classes Java, ou inversement,
pour créer les classes Java sur la base d'un WSDL (classe proxy en quelque sorte, qui fait le lien
entre l'application Java cliente et le service distant),
des outils pour déployer, tester et monitorer des web-services.
14
Apache Axis
Simulation :
15
RESTful
REpresentational State Transfer
16
RESTful
REST (REpresentational StateTransfer) ou RESTful est un style d’architecture pour
les systèmes hypermédia distribués,
Créé par Roy Fielding en 2000 dans le chapitre 5 de sa thèse de doctorat.
REST est un style d’architecture permettant de construire des applications (Web, Intranet,
Web Service).
Il s’agit d’un ensemble de conventions et de bonnes pratiques à respecter et non d’une
technologie à part entière.
L’architecture REST utilise les spécifications originelles du protocole HTTP, plutôt que
de réinventer une surcouche (comme le font SOAP ou XML-RPC par exemple).
REST c’est quoi ?
17
RESTful
Chaque ressource de l'application est accessible via une URI unique
Les opérations (notion CRUD) sont uniformes entre les ressources (avec HTTP)
Aucune notion d'état entre une suite d'actions (= pas de session utilisateur en
HTTP)
Les principes clefs
18
Technologiquement, les WebServices sont matures pour être utilisés dans un environnement
de développement distribué. Leur promotion faite par les acteurs principaux du marché
informatique en fait une des technologies sur lesquelles il faudra compter dans le futur.On
peut notament trouver des implémentations WebService dans les framework .Net [Microsoft],
WebSphere [IBM], ou WebLogic [BEA], et il existe aussi certains solutions libre (Apache
SOAP, Apache Axis ou uddi4j [IBM/HP]),
Cependant, d'un point de vu innovant, les WebServices n'apportent réellement que peu de
choses par rapport aux technologies distribuées déjà existantes telles CORBA ou JNI, les
concepts novateurs introduits par les WebServices étant pour le moment exclusivement
réservés au domaine du théorique. Aussi, on est en droit de se demander si l'apparition de
cette technologie est réellement motivée par une envie d'évolution ou bien uniquement par
une stratégie marketing de la part des grand groupes informatiques partenaires de cette
technologie et coutumiers de genre ...
19
Conclusion
Programming Web Services with SOAP , Par James Snell,Doug Tidwell,Pavel Kulchenko ,
isbn: 0596000952.
Restful Java Web Services , Jose Sandoval , isbn:1847196462
http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm
Bieber, G. and Carpenter, J. (2002). Introduction to Service-Oriented
Programming. http://www.openwings.org
Site official de axis : http://www.ws.apache.org/axis
20
Bibliographie
Merci pour votre attention

Mais conteúdo relacionado

Mais procurados

WEB SERVICE SOAP, JAVA, XML, JAXWS
WEB SERVICE SOAP, JAVA, XML, JAXWSWEB SERVICE SOAP, JAVA, XML, JAXWS
WEB SERVICE SOAP, JAVA, XML, JAXWSLhouceine OUHAMZA
 
Architectures orientées services
Architectures orientées servicesArchitectures orientées services
Architectures orientées servicesDonia Hammami
 
Tp1 - WS avec JAXWS
Tp1 - WS avec JAXWSTp1 - WS avec JAXWS
Tp1 - WS avec JAXWSLilia Sfaxi
 
Chp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesChp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesLilia Sfaxi
 
Chp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOAChp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOALilia Sfaxi
 
eServices-Tp1: Web Services
eServices-Tp1: Web ServiceseServices-Tp1: Web Services
eServices-Tp1: Web ServicesLilia Sfaxi
 
eServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementeServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementLilia Sfaxi
 
Appalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSPAppalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSPYouness Boukouchi
 
Tp2 - WS avec JAXRS
Tp2 - WS avec JAXRSTp2 - WS avec JAXRS
Tp2 - WS avec JAXRSLilia Sfaxi
 
Architectures distribuées
Architectures distribuéesArchitectures distribuées
Architectures distribuéesFranck SIMON
 
Support de cours EJB 3 version complète Par Mr Youssfi, ENSET, Université Ha...
Support de cours EJB 3 version complète Par Mr  Youssfi, ENSET, Université Ha...Support de cours EJB 3 version complète Par Mr  Youssfi, ENSET, Université Ha...
Support de cours EJB 3 version complète Par Mr Youssfi, ENSET, Université Ha...ENSET, Université Hassan II Casablanca
 
Entreprise Java Beans (EJB)
Entreprise Java Beans (EJB)Entreprise Java Beans (EJB)
Entreprise Java Beans (EJB)Heithem Abbes
 

Mais procurados (20)

Support Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFISupport Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFI
 
WEB SERVICE SOAP, JAVA, XML, JAXWS
WEB SERVICE SOAP, JAVA, XML, JAXWSWEB SERVICE SOAP, JAVA, XML, JAXWS
WEB SERVICE SOAP, JAVA, XML, JAXWS
 
Architectures orientées services
Architectures orientées servicesArchitectures orientées services
Architectures orientées services
 
Tp1 - WS avec JAXWS
Tp1 - WS avec JAXWSTp1 - WS avec JAXWS
Tp1 - WS avec JAXWS
 
Chp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesChp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées Services
 
Chp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOAChp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOA
 
Support JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVCSupport JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVC
 
eServices-Tp1: Web Services
eServices-Tp1: Web ServiceseServices-Tp1: Web Services
eServices-Tp1: Web Services
 
eServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementeServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API Management
 
Appalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSPAppalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSP
 
Soap, wsdl et uddi
Soap, wsdl et uddiSoap, wsdl et uddi
Soap, wsdl et uddi
 
Soap
SoapSoap
Soap
 
Support JEE Servlet Jsp MVC M.Youssfi
Support JEE Servlet Jsp MVC M.YoussfiSupport JEE Servlet Jsp MVC M.Youssfi
Support JEE Servlet Jsp MVC M.Youssfi
 
Tp2 - WS avec JAXRS
Tp2 - WS avec JAXRSTp2 - WS avec JAXRS
Tp2 - WS avec JAXRS
 
Soa
SoaSoa
Soa
 
Support de cours angular
Support de cours angularSupport de cours angular
Support de cours angular
 
Architectures distribuées
Architectures distribuéesArchitectures distribuées
Architectures distribuées
 
7 rest
7 rest7 rest
7 rest
 
Support de cours EJB 3 version complète Par Mr Youssfi, ENSET, Université Ha...
Support de cours EJB 3 version complète Par Mr  Youssfi, ENSET, Université Ha...Support de cours EJB 3 version complète Par Mr  Youssfi, ENSET, Université Ha...
Support de cours EJB 3 version complète Par Mr Youssfi, ENSET, Université Ha...
 
Entreprise Java Beans (EJB)
Entreprise Java Beans (EJB)Entreprise Java Beans (EJB)
Entreprise Java Beans (EJB)
 

Destaque

Introduction aux Frameworks java
Introduction aux Frameworks javaIntroduction aux Frameworks java
Introduction aux Frameworks javaRadhoueneRouached
 
Introduction au Framework AngularJs
Introduction au Framework AngularJsIntroduction au Framework AngularJs
Introduction au Framework AngularJsRadhoueneRouached
 
Service WEB de type REST avec Java
Service WEB de type REST avec JavaService WEB de type REST avec Java
Service WEB de type REST avec JavaFrancois ANDRE
 
Introduction à la sécurité des WebServices
Introduction à la sécurité des WebServicesIntroduction à la sécurité des WebServices
Introduction à la sécurité des WebServicesConFoo
 
A presentation on WCF & REST
A presentation on WCF & RESTA presentation on WCF & REST
A presentation on WCF & RESTSanthu Rao
 
There is time for rest
There is time for rest There is time for rest
There is time for rest SoftServe
 
REST in the shade of WCF
REST in the shade of WCFREST in the shade of WCF
REST in the shade of WCFSzymonPobiega
 
Design Patterns: Builder pattern (Le monteur)
Design Patterns: Builder pattern (Le monteur)Design Patterns: Builder pattern (Le monteur)
Design Patterns: Builder pattern (Le monteur)RadhoueneRouached
 
Journeesduweb.com Web 2.0
Journeesduweb.com Web 2.0Journeesduweb.com Web 2.0
Journeesduweb.com Web 2.0David Sévelin
 
Presentation Web 2.0 - ESSEC Geneve
Presentation Web 2.0 - ESSEC GenevePresentation Web 2.0 - ESSEC Geneve
Presentation Web 2.0 - ESSEC GeneveStephane Cheikh
 
Enquête annuelle de la franchise Banque Populaire FFF
Enquête annuelle de la franchise Banque Populaire FFFEnquête annuelle de la franchise Banque Populaire FFF
Enquête annuelle de la franchise Banque Populaire FFFulricstreit
 
Tp3 - Application SOA avec BPEL
Tp3 - Application SOA avec BPELTp3 - Application SOA avec BPEL
Tp3 - Application SOA avec BPELLilia Sfaxi
 
Business process execution language
Business process execution languageBusiness process execution language
Business process execution languageBilel Abed
 
Présentation d'Amazon Web Services - Human Talks Grenoble
Présentation d'Amazon Web Services - Human Talks GrenoblePrésentation d'Amazon Web Services - Human Talks Grenoble
Présentation d'Amazon Web Services - Human Talks GrenobleBastien Libersa
 
WCF tutorial
WCF tutorialWCF tutorial
WCF tutorialAbhi Arya
 

Destaque (20)

Introduction aux Frameworks java
Introduction aux Frameworks javaIntroduction aux Frameworks java
Introduction aux Frameworks java
 
Introduction au Framework AngularJs
Introduction au Framework AngularJsIntroduction au Framework AngularJs
Introduction au Framework AngularJs
 
A1 Flux Sitra
A1   Flux Sitra A1   Flux Sitra
A1 Flux Sitra
 
Service WEB de type REST avec Java
Service WEB de type REST avec JavaService WEB de type REST avec Java
Service WEB de type REST avec Java
 
Introduction à la sécurité des WebServices
Introduction à la sécurité des WebServicesIntroduction à la sécurité des WebServices
Introduction à la sécurité des WebServices
 
A presentation on WCF & REST
A presentation on WCF & RESTA presentation on WCF & REST
A presentation on WCF & REST
 
RESTful WCF Services
RESTful WCF ServicesRESTful WCF Services
RESTful WCF Services
 
There is time for rest
There is time for rest There is time for rest
There is time for rest
 
REST in the shade of WCF
REST in the shade of WCFREST in the shade of WCF
REST in the shade of WCF
 
Design Patterns: Builder pattern (Le monteur)
Design Patterns: Builder pattern (Le monteur)Design Patterns: Builder pattern (Le monteur)
Design Patterns: Builder pattern (Le monteur)
 
HTTP et REST
HTTP et RESTHTTP et REST
HTTP et REST
 
Journeesduweb.com Web 2.0
Journeesduweb.com Web 2.0Journeesduweb.com Web 2.0
Journeesduweb.com Web 2.0
 
Presentation Web 2.0 - ESSEC Geneve
Presentation Web 2.0 - ESSEC GenevePresentation Web 2.0 - ESSEC Geneve
Presentation Web 2.0 - ESSEC Geneve
 
Services Web Asynchrones
Services Web AsynchronesServices Web Asynchrones
Services Web Asynchrones
 
Enquête annuelle de la franchise Banque Populaire FFF
Enquête annuelle de la franchise Banque Populaire FFFEnquête annuelle de la franchise Banque Populaire FFF
Enquête annuelle de la franchise Banque Populaire FFF
 
Tp3 - Application SOA avec BPEL
Tp3 - Application SOA avec BPELTp3 - Application SOA avec BPEL
Tp3 - Application SOA avec BPEL
 
Business process execution language
Business process execution languageBusiness process execution language
Business process execution language
 
WCF Fundamentals
WCF Fundamentals WCF Fundamentals
WCF Fundamentals
 
Présentation d'Amazon Web Services - Human Talks Grenoble
Présentation d'Amazon Web Services - Human Talks GrenoblePrésentation d'Amazon Web Services - Human Talks Grenoble
Présentation d'Amazon Web Services - Human Talks Grenoble
 
WCF tutorial
WCF tutorialWCF tutorial
WCF tutorial
 

Semelhante a Web services SOAP et REST

Chap1 p1-introduction
Chap1 p1-introductionChap1 p1-introduction
Chap1 p1-introductionMoez Re
 
Cours services web_fabrice_mourlin
Cours services web_fabrice_mourlinCours services web_fabrice_mourlin
Cours services web_fabrice_mourlinangeeLee
 
S51 vos projets web services ibm i a l aide de php
S51   vos projets web services ibm i a l aide de phpS51   vos projets web services ibm i a l aide de php
S51 vos projets web services ibm i a l aide de phpGautier DUMAS
 
2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_servicesCamus LANMADOUCELO
 
Portails Etat De L'art
Portails  Etat De L'artPortails  Etat De L'art
Portails Etat De L'artTugdual Grall
 
les servlets-java EE
les  servlets-java EEles  servlets-java EE
les servlets-java EEYassine Badri
 
Services web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiServices web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiEl Habib NFAOUI
 
Introduction aux Technologies Web élaborée par Marouan OMEZZINE
Introduction aux Technologies Web élaborée par Marouan OMEZZINEIntroduction aux Technologies Web élaborée par Marouan OMEZZINE
Introduction aux Technologies Web élaborée par Marouan OMEZZINEMarouan OMEZZINE
 
eServices-Chp6: WOA
eServices-Chp6: WOAeServices-Chp6: WOA
eServices-Chp6: WOALilia Sfaxi
 
De l'open source à l'open API avec Restlet
De l'open source à l'open API avec RestletDe l'open source à l'open API avec Restlet
De l'open source à l'open API avec RestletJerome Louvel
 
Premiers pas dans l'univers .NET
Premiers pas dans l'univers .NETPremiers pas dans l'univers .NET
Premiers pas dans l'univers .NETBantu Hub
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)Restlet
 
Introduction à Cloud Foundry et au PaaS
Introduction à Cloud Foundry et au PaaSIntroduction à Cloud Foundry et au PaaS
Introduction à Cloud Foundry et au PaaSGerard Konan
 
Le design d'API avec Mulesoft
Le design d'API avec MulesoftLe design d'API avec Mulesoft
Le design d'API avec MulesoftSpikeeLabs
 
Investir sur son API web (in French)
Investir sur son API web (in French)Investir sur son API web (in French)
Investir sur son API web (in French)Restlet
 
De A à Z : Choisir une architecture pour sa solution applicative
De A à Z : Choisir une architecture pour sa solution applicativeDe A à Z : Choisir une architecture pour sa solution applicative
De A à Z : Choisir une architecture pour sa solution applicativeMicrosoft
 

Semelhante a Web services SOAP et REST (20)

Chap1 p1-introduction
Chap1 p1-introductionChap1 p1-introduction
Chap1 p1-introduction
 
Cours services web_fabrice_mourlin
Cours services web_fabrice_mourlinCours services web_fabrice_mourlin
Cours services web_fabrice_mourlin
 
education
educationeducation
education
 
S51 vos projets web services ibm i a l aide de php
S51   vos projets web services ibm i a l aide de phpS51   vos projets web services ibm i a l aide de php
S51 vos projets web services ibm i a l aide de php
 
2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services
 
Portails Etat De L'art
Portails  Etat De L'artPortails  Etat De L'art
Portails Etat De L'art
 
les servlets-java EE
les  servlets-java EEles  servlets-java EE
les servlets-java EE
 
Services web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiServices web soap-el-habib-nfaoui
Services web soap-el-habib-nfaoui
 
Introduction aux Technologies Web élaborée par Marouan OMEZZINE
Introduction aux Technologies Web élaborée par Marouan OMEZZINEIntroduction aux Technologies Web élaborée par Marouan OMEZZINE
Introduction aux Technologies Web élaborée par Marouan OMEZZINE
 
eServices-Chp6: WOA
eServices-Chp6: WOAeServices-Chp6: WOA
eServices-Chp6: WOA
 
De l'open source à l'open API avec Restlet
De l'open source à l'open API avec RestletDe l'open source à l'open API avec Restlet
De l'open source à l'open API avec Restlet
 
Soap
SoapSoap
Soap
 
Premiers pas dans l'univers .NET
Premiers pas dans l'univers .NETPremiers pas dans l'univers .NET
Premiers pas dans l'univers .NET
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)
 
Introduction à Cloud Foundry et au PaaS
Introduction à Cloud Foundry et au PaaSIntroduction à Cloud Foundry et au PaaS
Introduction à Cloud Foundry et au PaaS
 
Le design d'API avec Mulesoft
Le design d'API avec MulesoftLe design d'API avec Mulesoft
Le design d'API avec Mulesoft
 
Web services
Web servicesWeb services
Web services
 
.NET DotNet CF - 3
.NET DotNet CF - 3.NET DotNet CF - 3
.NET DotNet CF - 3
 
Investir sur son API web (in French)
Investir sur son API web (in French)Investir sur son API web (in French)
Investir sur son API web (in French)
 
De A à Z : Choisir une architecture pour sa solution applicative
De A à Z : Choisir une architecture pour sa solution applicativeDe A à Z : Choisir une architecture pour sa solution applicative
De A à Z : Choisir une architecture pour sa solution applicative
 

Web services SOAP et REST

  • 1. Web Services : SOAP et REST Réalisé Par: Radhouene Rouached & Maher Abed
  • 2. Plan Web service 2  Définition  Propriétés & Concepts SOAP  Avantage & Inconvénient  Apache Axis RESTful Conclusion
  • 3. Web Service « un service est un comportement défini par contrat, qui peut être réalisé et fourni par tout composant pour être utilisé par tout composant, sur la base unique du contrat». Service 3
  • 4. Web Service Les Web Services sont des composants web basés sur Internet (HTTP ) qui exécutent des tâches précises et qui respectent un format spécifique (XML). Ils permettent aux applications de faire appel à des fonctionnalités à distance en simplifiant ainsi l’échange de données. Les Web Services permettent aux applications de dialoguer à travers le réseau, indépendamment de : ◦ leur plate-forme d’exécution ◦ leur langage d'implémentation. Définition 4
  • 5. Web service  Un Service est Autonome et sans état 5 Propriétés  Un Service expose un Contrat  Les Frontières entre services sont Explicites  Les services communiquent par messages
  • 6. Web service Le concept des Web Services s’articule actuellement autour des trois concepts suivants : ◦ SOAP (Simple Object Access Protocol) - Est un protocole d'échange inter-applications indépendant de toute plate-forme, basé sur le langage XML. - Un appel de service SOAP est un flux ASCII encadré dans des balises XML et transporté dans le protocole HTTP. ◦ WSDL (Web Services Description Language) - Donne la description au format XML des Web Services en précisant les méthodes pouvant être invoquées, leurs signatures et le point d’accès (URL, port, etc..). - C’est, en quelque sorte, l’équivalent du langage IDL pour la programmation distribuée CORBA. ◦ UDDI (Universal Description, Discovery and Integration) - Normalise une solution d’annuaire distribué de Web Services, permettant à la fois la publication et l'exploration (recherche) de Web Services. - UDDI se comporte lui-même comme un Web service dont les méthodes sont appelées via le protocole SOAP. Concepts des web services 6
  • 7. Web Service Principe de fonctionnement 7
  • 8. ◦ Des standards simples (SOAP, WSDL, UDDI) ◦ Multi Protocole / Multi OS / Multi Langage ◦ Facilite l’échange des données ◦ Les outils de développement, s'appuyant sur ces standards, permettent la création automatique de programmes utilisant les services Web existant. Avantage Web service Avantage 8
  • 9. ◦ Performance: Les services Web souffrent de performances faibles comparée à d'autres approches de l'informatique répartie telles que le RMI, CORBA, ou DCOM. ◦ Jeunesse (Sécurité, Transaction,…): Les normes de services Web dans certains domaines sont actuellement récentes Inconvénient Web service Inconvénient 9
  • 11. SOAP SOAP est un protocole d'invocation de méthodes sur des services distants. Basé sur XML, SOAP a pour principal objectif d'assurer la communication entre machines. Le protocole permet d'appeler une méthode RPC et d'envoyer des messages aux machines distantes via un protocole de transport ( HTTP ). Objectifs visés - Assurer la communication entre applications d’une même entreprise (intranet) - Assurer les échanges interentreprises entre applications et services Web 11 Simple Object Access Protocol
  • 14. Apache Axis Axis est un ensemble de logiciels créés par la fondation Apache (The Apache Software Foundation), qui vise à faciliter le développement de services Web en technologie SOAP. Axis offre notamment : un environnement pouvant soit fonctionner comme un serveur SOAP/Rest indépendant, soit comme un plug-in de moteurs de servlet (en particulier Tomcat), une API pour développer des services web SOAP RPC ou à base de messages SOAP, le support de différentes couches de transport : HTTP, FTP, SMTP, POP et IMAP..., la sérialisation/désérialisation automatique d'objets Java dans des messages SOAP, des outils pour créer automatiquement les WSDL correspondant à des classes Java, ou inversement, pour créer les classes Java sur la base d'un WSDL (classe proxy en quelque sorte, qui fait le lien entre l'application Java cliente et le service distant), des outils pour déployer, tester et monitorer des web-services. 14
  • 17. RESTful REST (REpresentational StateTransfer) ou RESTful est un style d’architecture pour les systèmes hypermédia distribués, Créé par Roy Fielding en 2000 dans le chapitre 5 de sa thèse de doctorat. REST est un style d’architecture permettant de construire des applications (Web, Intranet, Web Service). Il s’agit d’un ensemble de conventions et de bonnes pratiques à respecter et non d’une technologie à part entière. L’architecture REST utilise les spécifications originelles du protocole HTTP, plutôt que de réinventer une surcouche (comme le font SOAP ou XML-RPC par exemple). REST c’est quoi ? 17
  • 18. RESTful Chaque ressource de l'application est accessible via une URI unique Les opérations (notion CRUD) sont uniformes entre les ressources (avec HTTP) Aucune notion d'état entre une suite d'actions (= pas de session utilisateur en HTTP) Les principes clefs 18
  • 19. Technologiquement, les WebServices sont matures pour être utilisés dans un environnement de développement distribué. Leur promotion faite par les acteurs principaux du marché informatique en fait une des technologies sur lesquelles il faudra compter dans le futur.On peut notament trouver des implémentations WebService dans les framework .Net [Microsoft], WebSphere [IBM], ou WebLogic [BEA], et il existe aussi certains solutions libre (Apache SOAP, Apache Axis ou uddi4j [IBM/HP]), Cependant, d'un point de vu innovant, les WebServices n'apportent réellement que peu de choses par rapport aux technologies distribuées déjà existantes telles CORBA ou JNI, les concepts novateurs introduits par les WebServices étant pour le moment exclusivement réservés au domaine du théorique. Aussi, on est en droit de se demander si l'apparition de cette technologie est réellement motivée par une envie d'évolution ou bien uniquement par une stratégie marketing de la part des grand groupes informatiques partenaires de cette technologie et coutumiers de genre ... 19 Conclusion
  • 20. Programming Web Services with SOAP , Par James Snell,Doug Tidwell,Pavel Kulchenko , isbn: 0596000952. Restful Java Web Services , Jose Sandoval , isbn:1847196462 http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm Bieber, G. and Carpenter, J. (2002). Introduction to Service-Oriented Programming. http://www.openwings.org Site official de axis : http://www.ws.apache.org/axis 20 Bibliographie
  • 21. Merci pour votre attention