Concepts : Services Web pour J2EE
Rubriques
Qu'est-ce qu'un service Web J2EE ?
Un service Web est organisé autour d'une architecture comportant trois éléments principaux : le registre des services, le fournisseur de services et le demandeur de services. La figure 1
donne les généralités de la relation existant entre ces différents éléments.

Figure 1: -
Architecture des services Web
Le fournisseur de services commence par définir l'interface de service, grâce à un document abrégé de description des services, utilisant le langage de description des services Web (WSDL).
Cette description est associée aux liaisons d'acheminement, à l'encodage et à une adresse de description des services permettant de définir une instance de services également appelée noeud final des services ou
port. Cette description concrète peut ensuite être éditée dans un registre de services tel que le Universal Description, Discovery
and Integration (UDDI) auquel tout demandeur de services peut accéder. Le demandeur de services l'utilisera pour sélectionner et utiliser une implémentation des services pour le service Web.
Un service Web J2EE inclut un ensemble de ports fonctionnant à l'intérieur d'un conteneur.
Le conteneur facilite l'accès au service et fournit l'environnement d'exécution.
Le client d'un service Web peut être un autre service Web, n'importe quel composant J2EE, ou une application Java arbitraire.
Même si elles sont non-java ou non-Web, les applications
peuvent utiliser les services Web.
Vue du client des services Web
La vue du client des services Web est fournie par le fournisseur de ports (fournisseur de services) et par le conteneur. Comme cela est illustré dans la Figure
2 ci-dessous (en gris), la vue du client comprend une interface des services et une interface du noeud final des services.

Figure 2: -
Vue du client des services Web
Pour accéder au port d'un service Web,
le client commence par localiser l'interface des services, en utilisant les interfaces de programmation d'application JNDI. Grâce à l'interface de services, le client va découvrir les méthodes à utiliser pour accéder au port et accéder à l'implémentation du service Web, en utilisant l'interface du noeud final des services. Dans la vue du client, un port est considéré comme un objet sans état.
Les interfaces de services et du noeud final des services sont définies par la spécification JAX-RPC ; cependant,
le comportement de l'interface de services est définie par le fournisseur de services Web dans le document de description du service WSDL.
Vue du serveur des services Web
La vue du serveur d'un Service Web traite de l'implémentation de la logique métier du service. Comme cela est défini dans le J2EE 1.4, le noeud final du service Web peut être implémenté, en respectant les approches suivantes :
- Utiliser un bean de session
sans état, tel que cela est mentionné dans les spécifications JSR
109 et EJB 2.1
- Utiliser un servlet tel que cela est mentionné dans JAX-RPC 1.1
Pour plus d'informations sur ces deux approches, voir le chapitre Principes et conseils : identifier les beans de session relativement au noeud final basé sur les beans de session et Principes et conseils :
Identifier les servlets relativement au noeud final basé sur les servlets.
Référence
La référence principale de cette page est la spécification des services Web
pour J2EE (JSR 109).
|