Tutoriel Jboss : architecture et fonctionalités Jboss Web

////Tutoriel Jboss : architecture et fonctionalités Jboss Web

Maîtrisez l’architecture de Jboss Web, le conteneur web du serveur d’applications Jboss. Comprenez le lien entre Jboss Web et Tomcat. Identifiez les connecteurs http, https et ajp. Gérez l’URL et la page d’accueil de votre application. Mettez en œuvre des hôtes virtuels. Enfin, bénéficiez de services pré-packagés supplémentaires : les valves

Prérequis

 Installation Kit de développement JDK 6

 Tutoriel jboss N°1 : installation Jboss 5

Objectifs

 Comprendre le conteneur web de Jboss.

 Identifier le lien entre Jboss Web et tomcat

 Comprendre l’hébergement de plusieurs applications

 Mettre en oeuvre des Valves

Durée

 40 min

Programme

 Partie 1 : Comprendre le conteneur web de Jboss.

 Partie 2 : Comprendre l’hébergement de plusieurs applications

 Partie 3 : Valves

Comprendre Jboss Web

Jboss Web est l’implémentation par Jboss du conteneur Web des spécifications JEE.
Architecture JEE

Arborescence

Jboss Web est implémenté sous forme de service Jboss (.Sar pour ‘Service Archive’).

 Identifiez le répertoire jbossweb.sar à la racine du répertoire ‘deploy’ de la configuration ‘default’ de Jboss

tutoriel-jboss-architecture-jboss-web-valves-hotes-virtuel-1

 Analysez le contenu du répertoire jbossweb.sar

tutoriel-jboss-architecture-jboss-web-valves-hotes-virtuel-2

Notez la présence du fichier server.xml de Tomcat, premier fichier clé de la configuration de Jboss Web.

server

QUESTION : à quoi sert le fichier context.xml présent dans ce répertoire ?

 Analysez le contenu du répertoire deployers/jbossweb.deployer

tutoriel-jboss-architecture-jboss-web-valves-hotes-virtuel-3

Notez la présence du fichier ‘global’ web.xml, commun à toutes les applications. C’est le deuxième fichier clé de la configuration de Jboss Web.

web

 Identifiez dans ce fichier les sections suivantes : welcome-file-list , session-timeout . Qu’en déduisez-vous ?

 Identifiez la présence dans le répertoire META-INF du fichier nécessaire à l’intégration de Jboss Web dans l’architecture ‘Microconteneur’ de Jboss

La configuration système du service est réalisée dans Jboss 5 à travers le ‘deployer’ Jboss web

tutoriel-jboss-architecture-jboss-web-valves-hotes-virtuel-3bis

Ce fichier contient des propriétés qui impactent la façon dont un war est déployé dans Jboss.

— Domaine de sécurité par défaut (S’il n’est pas précisé dans WEB-INFjboss-web.xml) –> propriété ‘deleteWorkDirOnContextDestroy’

— Suppression ou non du répertoire de travail ‘work’ de l’application suite à suppression de l’application –> propriété ‘deleteWorkDirOnContextDestroy’

— Chargeur de classe à utiliser –> ‘java2ClassLoadingCompliance’ ou ‘useJBossWebLoader’ ou ‘filteredPackages’.

war-deployers-jboss-beans

Architecture Jboss Web

A l’aide du schéma suivant, expliquez le contenu du fichier server.xml


server

QUESTIONS :

— Qu’est ce qu’un ‘Engine’ ?

— Qu’est ce qu’un ‘Host’ ? Peut’il y avoir plusieurs Host dans un Engine ?

— Qu’est ce qu’un ‘Connector’ ? Combien y a t’il de connectors ?

— Qu’est ce qu’une ‘Valve’ ? Combien y a t’il de valves ?

— Qu’est ce qu’un ‘Realm’ ? Quelle différence entre installer un Realm pour un Host et pour un Engine ?

Application d’accueil

 Identifiez le répertoire ROOT.war

tutoriel-jboss-architecture-jboss-web-valves-hotes-virtuel-5

 Montrez que le contenu de ce fichier correspond à l’application d’accueil de Jboss : http://localhost:8080

tutoriel-jboss-architecture-jboss-web-valves-hotes-virtuel-6

 Remplacez la page d’accueil de Jboss par votre propre page d’accueil

Connecteur Http

 Modifiez le connecteur web de Jboss afin de pouvoir arriver sur la page d’accueil non plus par http://localhost:8080 mais directement par http://localhost

Hotes virtuels

tutoriel-jboss-architecture-jboss-web-valves-hotes-virtuel-8

 Modifiez le connecteur web afin de pouvoir arriver sur la page d’accueil de l’application hellostruts via url : http://objis.tuto/hellostruts et non via l’url http://localhost/hellostruts

METHODE en 4 étapes :

— > 1) Enregistrer l’hote ‘objis.tuto’ dans fichier hosts

— > 2) Configuter la prise en charge d’hotes virtuels par Jboss Web

— > 3) Définir l’hote virtuel ‘objis.tuto’ dans server.xml (balise ‘host’)

— > 4) associer une application à un hote virtuel ‘objis.tuto’

Etape 1 : mise à jour fichier hosts

 Sous MsDos, faites un ping objis.tuto . Expliquez le pb

 Identifier votre fichier hosts (sous windows dans c/windows/system32/drivers/etc/hosts)

config-hosts-hote-virtuel

 Ajoutez la ligne suivante :

config-hosts-hote-virtuel-2

 Enregistrez vos modifications.

 Sous MsDos, faites à nouveau un ping objis.tuto .

config-hosts-hote-virtuel-3

Etape 2 : prise en charge hote virtuel par Jboss

Mettez à jour votre fichier server.xml en ajoutant à la balise connector http l’attribut useIPVHosts=’true’

tutoriel-jboss-architecture-jboss-web-valves-hotes-virtuel-8bis

Etape 3 : définition nouvel hote

tutoriel-jboss-architecture-jboss-web-valves-hotes-virtuel-8ter

Etape 4 : association de l’application (war) à un hote virtuel

Cela se fait dans le fichier jboss-web.xml de l’application, à travers la balise ‘virtual-host’, dont le contenu doit être le même que l’alias associé à l’hote identifié

hote-virtuel-jboss

Valves

tutoriel-jboss-architecture-jboss-web-valves-hotes-virtuel-9

 Expliquez ce qu’est une Valve

 Analysez les valves suivantes :

— org.apache.catalina.valves.RequestDumperValve

— org.apache.catalina.valves.AccessLogValve

— org.apache.catalina.authenticator.SingleSignOn

— org.apache.catalina.authenticator.ClusteredSingleSignOn

Identifiez la valeur ajoutée des valves tomcat suivantes :

— org.apache.catalina.valves.FastCommonAccessLogValve

— org.apache.catalina.valves.RemoteAddrValve Allows

— org.apache.catalina.valves.RemoteHostValve

Configuration livraison war

 Analysez l’exemple suivant d’application web à déployez dans Jboss

tutoriel-jboss-architecture-jboss-web-valves-hotes-virtuel-7

 A quoi pourrait servir les fichiers context.xml et jboss-web.xml de cette application ?

 Comment accéder à la page d’accueil de l’application une fois déployée ?

 Comment faire pour que l’application réagisse à l’url http://localhost/toto ?

 Comment sécuriser l’accès aux pages de cette application ?

Considérez l’application web simple suivante :
hello

Mettez en œuvre les configurations précédentes.

Conclusion

Dans ce tutoriel vous avez analysé Jboss Web, le conteneur web du serveur d’applications JBoss. Vous avez compris le lien entre Jboss Web et Tomcat et avez mis en oeuvre des hotes virtuels.

2018-01-27T19:32:48+01:00

Contactez nous

241 rue DUGUESCLIN, 69003 Lyon

Web : Objis : spécialiste formation Java