Services Web
Les services Web sont des applications modulaires et autonomes qui peuvent être décrites, publiées, localisées et appelées sur un réseau.
Le serveur d'applications prend en charge les services web qui sont développés et implémentés selon la spécification Web Services for Java™ EE (Java Platform, Enterprise Edition). Le serveur d'applications prend en charge les modèles de programmation JAX-WS (Java API for XML Web Services) et JAX-RPC (Java API for XML-based RPC). JAX-WS est un modèle de programmation stratégique qui simplifie le développement d'applications via la prise en charge d'un modèle standard basé sur les annotations pour développer des clients et des applications de services web.
Dans un scénario général de services Web, une application métier demande un service à une autre application. La demande est traitée via une adresse web donnée à l'aide de messages SOAP via HTTP, sur un transport JMS (Java Message Service) ou directement invoquée en tant qu'EJB (Enterprise JavaBeans). Le service reçoit la requête, la traite et renvoie une réponse. Les bulletins météorologiques et les cotations boursières sont des exemples de services web simples. L'appel de méthode est synchrone, autrement dit, la méthode attend jusqu'à ce que le résultat soit disponible. La réservation de billets d'avion ou le remplissage de bons de commande en ligne sont des exemples de services transactionnels adaptés aux offres, opérations business-to-business (B2B) ou business-to-client (B2C).
Des services Web peuvent inclure le service lui-même ou le client qui accède au service.
Les services web sont des applications Web qui vous permettent d'améliorer la souplesse de vos processus métier en les intégrant à des applications qui ne communiqueraient pas sinon. Le programme de prêt de bibliothèque interne se trouvant sur votre bibliothèque locale est un bon exemple du concept des services web et de son évolution. Le concept de services web existait même avant le terme lui-même. Le concept s'est imposé avec la naissance d'Internet. Avant Internet, vous deviez accéder à une bibliothèque, effectuer des recherches dans des collections, puis emprunter les livres. Lorsque vous ne trouviez pas le livre désiré, le bibliothécaire effectuait une recherche par ordinateur ou par téléphone et recherchait le livre dans une bibliothèque des environs. Le bibliothécaire commandait pour vous le livre et vous alliez le chercher après livraison à votre bibliothèque locale. En incorporant des applications de services web, vous pouvez rationaliser votre visite de la bibliothèque.
Dorénavant, vous pouvez effectuer une recherche dans la bibliothèque locale ainsi que dans d'autres bibliothèques locales simultanément. Lorsque d'autres bibliothèques offrent à votre bibliothèque un service web permettant d'effectuer une recherche dans leur collection (le service peut avoir été fourni via UDDI (Universal Description Discovery and Integration)), vos résultats prennent en compte leurs ressources. Vous pouvez utiliser une autre application de services web et envoyer le livre à votre domicile. L'utilisation d'applications de services web vous permet de gagner du temps. Elle libère également le bibliothécaire de certaines tâches, ce qui lui permet de se consacrer à d'autres tâches inhérentes à ses fonctions.
Les services Web sont une concrétisation de l'approche de programmation dite "architecture orientée services" (SOA). L'idée est de construire ou générer des applications en découvrant et en implémentant les services disponibles sur le réseau ou en appelant des applications déjà disponibles pour accomplir une tâche. Les services Web permettent l'interopérabilité, par exemple, des applications de services web fournissent des composants créés dans différents langages de programmation d'interagir comme s'ils avaient été créés à l'aide du même langage. Pour l'appel de leur implémentation, les services Web reposent sur des technologies de transport existantes, telles que HTTP et sur des techniques d'encodage de données standard, telles que XML (Extensible Markup Language).
- Web Services Description Language (WSDL)
WSDL est le fichier de type XML qui décrit le service web. La demande de service Web utilise ce fichier pour lier le service.
- SOAP
SOAP est le protocole de type XML utilisé par la demande de service web pour appeler le service.
- Universal Description, Discovery
and Integration Protocol (UDDI)
UDDI est le registre qui héberge le courtier de services. UDDI est similaire aux Pages Jaunes d'un annuaire.
Pour un scénario plus détaillé, voir la rubrique "Scénario de services Web : Présentation" qui décrit le mode de fonctionnement d'un commerce fictif de jardinerie en ligne nommé Plants by WebSphere et comment ce commerce a intégré le concept des services Web.
Pour obtenir la liste complète des normes et spécifications prises en charge, voir les spécifications des services Web et la documentation des API.