Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Web Services : SOAP et REST

Web Services : SOAP et REST

Web Services : SOAP et REST

radhouene rouached

March 07, 2015
Tweet

More Decks by radhouene rouached

Other Decks in Education

Transcript

  1. Plan Web service 2  Définition  Propriétés & Concepts

    SOAP  Avantage & Inconvénient  Apache Axis RESTful Conclusion
  2. 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
  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
  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
  5. 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
  6. ◦ 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
  7. ◦ 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
  8. 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
  9. 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
  10. 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
  11. 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
  12. 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
  13. 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