ATTENTION : Tutorial en cours d'écriture ! N'hésitez pas à nous signaler toute erreur ou suggestion.
Accès rapide : Structure globale du fichier WEB-INF/web.xml Paramétrage du module de traces NWS Paramétrage du module de statistiques Paramétrage du moteur d'indexation
Bien que n'utilisant pas l'ensemble des technologies web proposées par la plate-forme J2EE, le framework NWS s'appuie néanmoins sur la notion de servlets. Ce choix permettant de garantir que les pages Web développées via NWS pourront s'exécuter sur n'importe quel serveur d'application J2EE (JBoss, ...), voir même simplement sur Tomcat. De ce choix découle le fait qu'une application Web NWS doit être déployée dans un WAR et donc se configure par l'intermédiaire du fichier WEB-INF/web.xml. C'est sur le contenu de ce dernier fichier que ce chapitre va porter son attention.
WEB-INF/web.xml
Le fichier WEB-INF/web.xml est ce que l'architecture J2EE appelle un descripteur de déploiement : c'est à dire qu'il contient des informations de configuration sur les différents composants Web à déployer sur le serveur Tomcat (ou autre). Traditionnellement ce fichier contient au moins deux aspects (bien que le standard J2EE en supporte d'autres) : les configurations des servlets et les définitions de paramètres d'initialisation du contexte associé à l'application. Reprenons ces deux points un à un.
Le framework NWS se base sur une architecture MVC 2 avec tout de même quelques nuances d'implémentation, relativement aux autres frameworks Java similaires (Struts 1, Struts 2 ou encore JSF). Malgré ces nuances, l'approche MVC 2 impose un point commun à tous ces frameworks. Une servlet sert de contrôleur principal : elle repassera ensuite la main à des contrôleurs secondaires (implémentés sous forme de classes de page Web). Le contrôleur principal est représenté par la classe corelib.services.web.server.ControllerServlet. Une configuration de servlet est donc obligatoire pour ce contrôleur. Cette configuration sera, de plus, mise en relation avec toutes les requêtes se terminant par .wp. Il vous est possible de définir d'autres configurations de servlets, mais elles ne rentreront nullement en jeu dans le fonctionnement normal de vos pages Web.
corelib.services.web.server.ControllerServlet
.wp
Pour ce qui est de vos paramètres de configuration, ils seront introduits via le tag XML <context-param>. Un paramètre sera constitué de deux parties : son nom et sa valeur. Le nom d'un paramètre sera introduit via le sous-tag <param-name>. La valeur associée, le sera par l'intermédiaire d'un sous-tag <param-value>. L'exemple ci-dessous (correspondant au fichier de configuration de l'application de démonstration du framework NWS) vous montre un exemple de définition de paramètre ainsi que la configuration de votre contrôleur principal (la servlet de type ControllerServlet).
ControllerServlet
01 <?xml version="1.0" encoding="UTF-8"?> 02 <!DOCTYPE web-app PUBLIC 03 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 04 "http://java.sun.com/dtd/web-app_2_3.dtd"> 05 06 07 <web-app> 08 09 <display-name>Virtual Caddy - NWS Sample</display-name> 10 <description>NWS Sample</description> 11 12 <context-param> 13 <param-name>TRACE_ENABLED</param-name> 14 <param-value>true</param-value> 15 </context-param> 16 <context-param> 17 <param-name>TRACE_LOCALHOST_ONLY</param-name> 18 <param-value>true</param-value> 19 </context-param> 20 <context-param> 21 <param-name>TRACE_URI</param-name> 22 <param-value>Trace.wp</param-value> 23 </context-param> 24 25 26 <servlet> 27 <servlet-name>NWS Servlet</servlet-name> 28 <servlet-class>corelib.services.web.server.ControllerServlet</servlet-class> 29 </servlet> 30 31 <servlet-mapping> 32 <servlet-name>NWS Servlet</servlet-name> 33 <url-pattern>*.wp</url-pattern> 34 </servlet-mapping> 35 36 </web-app>
Pour ce qui est de l'association de l'extension ".wp" à notre contrôleur principal (lignes 31 à 34), notez qu'il n'y a aucune obligation dans l'absolue. Si vous préférez utiliser une autre extension (pourquoi pas ".toto") cela fonctionnera très bien. Néanmoins, ".wp" pour "Web Page" n'est peut être pas si mal que çà.
Le framework NWS intègre un module de traces permettant d'historiser le contenu des requêtes émises pour une application Web donnée. La configuration de ce module de traces s'effectue, bien entendu, à partir du fichier WEB-INF/web.xml. L'image ci-dessous vous présente un exemple d'affichage de traces pour l'application de démonstration du framework. Suivra un tableau présentant l'ensemble des paramètres de configuration du module de traces.
Le framework propose aussi un module de statistiques permettant de connaître le nombre de sessions ouvertes par jour, les proportions de navigateurs utilisés sur votre application Web, ... Bien entendu, ce module est paramétrable, bien qu'il en soit qu'à ses débuts. Voici donc la liste des paramètres supportés à ce jour.
Le framework NWS propose aussi un moteur d'indexation pour vos pages Web. Pour de plus amples informations, je vous renvois vers la fiche technique associée à ce module.
Dominique LIARD - © 2007 SARL Infini Software - Tous droits réservés Les autres marques et les noms de produits cités dans ces documents sont la propriété de leurs détenteurs respectifs.