Les relations nécéssaire entre les éléments d’une plateforme J2EE sont illustrés dans le schéma ci-dessous.
Ce vue n’est qu’une représentation des relations entre les différents élements mais ne signifie pas que ces derniers doivent etre répartis sur plusieurs machines , process , espace d’adressage ou machines virtuelle.
Les conteneurs illustrés par des rectangles sont des environnements d’exécution (runtime environment) J2EE qui fournissent les services nécessaires aux composants applicatifs, représentés dans la partie haute de chaque rectangle. Ces services mis a disposition sont représenté dans la partie inférieur des conteneurs. Tous ces services seront définis ultérieurement (dans l’article les services standard J2EE).
Les flèches représentent les acces requis par chacun des autres composants de la plateforme J2EE.
Les composants applicatifs
L’environnement d’exécution J2EE défini 4 types de composants applicatifs qui doivent être supporté par tous les produits J2EE :
Les clients applicatifs : ce sont les programmes java (typiquement des interface graphique utilisateurs – GUI) qui s’exécute sur un ordinateur client. Les clients applicatifs permettent à l’utilisateur de se servir de l’application et d’avoir ainsi accès à tous les services résidant sur des couches intermédiaires.
- Les applets sont des composant GUI qui s’exécute généralement dans un browser, mais qui peuvent également s’exécuter dans d’autres appareils (supportant le modèle de programmation des applets). Les applets fournissent des GUI puissantes pour les applications J2EE (repoussant les limites imposées par les pages en HTML classique)
- Les servlets, les pages JSP, les filtres et les listeners d’événement web s’exécutent dans des conteneurs web et peuvent répondre à des requetes HTTP provenant de cleints web. Les servlets, JSP et filtres peuvent être utilisés pour générer le code HTML d’une interface utilisateur. Il s peuvent également etre utilisés pour générer du XML ou tout autre format de donnée qui sera consommé par les composants d’une autre application. Une sorte spécifique de servlet permet le support des web services qui utilisent le protocole SOAP/HTTP. Les servlets, les pages créées avec la technologie Java Server Page (JSP) les filtres web et les listener d’évènement web sont communément regroupé sous l’appellation ‘composants web’. Les applications webs sont constituées de ces composants, ainsi que d’autres tels que des pages HTML. Ces composants s’exécutent dans des conteneurs web. Un serveur web inclu un conteneur web ainsi que le suport d’autres protocoles, de mécanismes de sécurité tel que défini dans les spécifications J2EE.
- Les composants Enterprise JavaBeans™ (EJB) s’exécutent dans une environementsupportant les transactions. Les EJB contiennent généralement la logique applicative des applications J2EE. Les EJB peuvent fournir des web services directement en utilisant le protocole SOAP/HTTP.
Les seveurs J2EE fournissent le support du déploiement, de l’administration et de l’exécution des applications qui se conforment au standards. Les composant applicatifs peuvent être divisés en trois catégories selon leur dépendance au serveur J2EE :
- Les composants qui sont déployés, administré et exécuté au sein d’un serveur J2EE. Ces composant inclus les composants web ainsi que les EJB.
- Les composants qui sont déployés et administrés sur un serveur J2EE mais qui se chargent et s’exécutent sur la machine client. Ces composants incluent les pages HTML ainsi que les applets qu’elles peuvent contenir.
- Les composant dont le déploiement ne respecte pas complètement ces spécifications. Les applications clientes peuvent rentrer dans cette catégorie. Les futures versions des spécifications J2EE pourront définir plus précisément le déploiement et l’administration de ces applications clients.
Les conteneurs
Les conteneurs fournissent les support d’exécution pour les composants d’applications J2EE. Ces conteneurs fournissent aux composants applicatifs une vue agrégée des toutes les APIs J2EE sous jacentes . Les composants applicatifs J2EE n’interagissent jamais directement avec d’autres composants applicatifs. Ils utilisent les protocoles et méthodes des conteneurs pour interagir les uns avec les autres et avec les services des plateformes. Cette introduction d’un médiateur entre les composants et les services J2EE permet au conteneur d’injecter de manière transparente les services définis par les descripteurs de déploiement, tels que le management déclaratif de transaction, les vérification de sécurité, le pooling de ressource, et le management d’état. Un produit J2EE classique fournira un conteneur pour chacun des type d’application (conteneur d’application clientes, un conteneur d’applet un conteneur de composant web et un conteneur d’EJB).
Les spécifications J2EEimposent aux conteneurs de fournri un environnement d’exécution java compatibles aux standards Java 2 Standard Edition (J2SE). Le conteneur d’applet peut utiliser le plugin java pour fournir cet environnement ou en proposer un nativement. Ces conteneurs doivent pouvoir interpreter les formats de fichiers utilisés pour les packaging de composant d’application utilisés pour le déploiement. Les conteneurs sont implémentés par un “Product Provider”.
Les spécifications J2EE définissent un ensemble de services standards que les produits compatibles J2EE se doivent de respecter (décrits plus tard) . Les conteneurs J2EE fournissent les API que les composants applicatifs utilisent pour accéder à ces services. Ces spécification définissent également les moyens d’étendres les services J2EE à l’aide de connecteurs vers des systemes applicatifs ne respectant pas les standards J2EE tels que les mainframes ou les ERP.

Post a Comment