La spécification J2EE de Sun définit une architecture spécifique d'application orientée Web.
Présentation de l'architecture J2EE :
- Comprendre les enjeux
- Comprendre l'architecture
- Cerner le rôle de chaque brique
- Quelles briques pour quels types d'application ?
Toute application informatique professionnelle repose sur un des trois principaux types d'architecture que l'on peut classer en deux catégories :
- Les architectures monolithiques
- Les architectures distribuées comprenant les architectures « 2-tiers » (client / serveur) et les architectures « n-tiers ».
Une plateforme respectant le standard J2EE doit pouvoir fournir des services de manière native sans forcément les implémenter dans l'application. Les services sont les API représentées dans la partie centrale des conteneurs de l'illustration 3. Ce sont eux qui supportent l'application et ses composants. Il est très important de cerner leur finalité pour comprendre les avantages de l'aspect modulaire de l'architecture J2EE.
[...] Ces services offrent à une application supportée par la plateforme J2EE, la possibilité d'interagir avec d'autres composants ou applications à chaque couche de l'application c'est à dire à chaque conteneur de la plateforme. Cela offre à cette application une très bonne interopérabilité, ce qui est aujourd'hui nécessaire dans les applications d'entreprises qui doivent pouvoir non seulement profiter de l'EIS mais aussi en faire partie dans certains cas comme les applications de gestion par exemple. L'illustration 4 reprend les services fournis par chaque conteneurs de la plateforme J2EE et donc susceptibles d'être utilisés par une application J2EE L'architecture J2EE en pratique : Les frameworks J2EE Spring, Struts et maintenant JSF, lorsque l'on parle de J2EE, on entend souvent des analogies avec ces outils. [...]
[...] JSF propose une architecture 3 tiers orientée Web. Lorsque vous créez un projet, vous avez bien sûr la base de données à part, généralement aidé par un plugin de type myEclipse ou encore Exadel Studio, le framework défini est vide mais construit. Il comporte une partie code Java qui représente le conteneur business de l'application et une partie webContent qui symbolise le conteneur Web de votre application. C'est dans ce dernier que vous placerez vos pages JSP par exemple. L'utilisation des frameworks et des outils associés comme les plugins définis ci dessus simplifie énormément le développement d'applications tiers. [...]
[...] La puissance d'une architecture n-tiers vient, de la division de l'application en différentes couches. Dans une telle architecture, on distingue trois parties principales : La partie client : cette partie représente la couche présentation de l'application. Elle se situe au niveau du poste utilisateur. Elle peut être constituée d'un client Web (Browser) ou d'un consommateur de Web Service par exemple. La partie applicative pure aussi appelée Middle Tier La partie EIS[3] appelée EIS Tier qui représente principalement la couche d'accès aux données. [...]
[...] Voyons comment cela est configuré dans le web.xml : org.apache.myfaces.webapp.StartupServletContextListener Faces Servlet javax.faces.webapp.FacesServlet 1 Faces Servlet *.jsf On voit que l'on configure d'abord le listener capable de lancer la servlet, ensuite vient la servlet elle-même. Enfin, le mapping associé à la servlet. Il n'y a rien de plus à configurer pour cette partie. Bien entendu le concept de Servlet est bien plus compliqué que cela, mais cette courte description nous suffit pour l'introduction ce constitue ce document. Les composants d'une application web JSF Comme tout framework, JSF possède certains composants ayant un rôle bien déterminé pour le fonctionnement de l'application. [...]
[...] Cela permet de profiter d'une interface plus riche que l'utilisation de pages HTML classiques même couplée à JavaScript. Ce conteneur fait partie de la couche présentation coté client puisque les applets sont envoyées au client disposant de l'API[6] applet pour pouvoir l'interpréter. Le conteneur d'applications clients Le conteneur d'applications clients représente les applications développées en Java de manière traditionnelle et installées sur le poste utilisateur. Ces applications peuvent consommer les services de l'application situés sur le serveur soit en appelant des servlets situées dans le conteneur Web soit directement en appelant le EJB de l'EJB container via les services fournis respectivement par chaque conteneur (détaillés dans la partie suivante). [...]
Source aux normes APA
Pour votre bibliographieLecture en ligne
avec notre liseuse dédiée !Contenu vérifié
par notre comité de lecture