NWS Tutorial

Configuration de votre application Web



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.

Structure globale du fichier 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.

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).

 
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>
Fichier WEB-INF/web.xml

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 çà.

Paramétrage du module de traces NWS

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.

Exemple d'affichage de traces NWS

Nom du paramètre Valeur par défaut Description
TRACE_ENABLED false Permet d'activer ou non le module de traces intégré au framework
TRACE_LOCALHOST_ONLY true Permet de spécifier si la trace est accessible uniquement à partir du poste local (du serveur Web) ou si vous permettez l'accès aux traces à distance.
TRACE_URI Trace.wp Quel est "la pseudo page Web" permettant l'accès aux traces
TRACE_MAX_COUNT 1000 Permet de contrôler le nombre maximal de traces que le serveur peut conserver en mémoire.

Paramétrage du module de statistiques

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.

Nom du paramètre Valeur par défaut Description
STATISTICS_ENABLED false Permet d'activer ou d'inhiber le module de statistiques
STATISTICS_FILENAME REQUIRED Permet de spécifier le fichier XML dans lequel les statistiques seront conservées. Ce fichier s'exprime relativement par rapport à la racine de l'application Web considérée
STATISTICS_DURATION REQUIRED Nombre de jours de statistiques mémorisés dans le fichier XML.
STATISTICS_URL REQUIRED URL permettant d'invoquer la page web de présentation des statistiques

Paramétrage du moteur d'indexation

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.

Nom du paramètre Valeur par défaut Description
SEARCH_ENGINE_ENABLED false Permet d'activer ou d'inhiber le moteur d'indexation.
SEARCH_ENGINE_EXCLUDES Permet de configurer le moteur d'indexation pour ne pas considérer un répertoire (ou plusieurs) de l'application Web.
SEARCH_ENGINE_ADDITIONAL_SCANNERS Permet d'ajouter des classes aptes à scanner des nouveaux types de documents contenus dans votre application Web.

CAUTION : NWS vous est proposé en version beta (d'évaluation) afin de vous permettre d'évaluer ce framework. Infini Software se dégage de toutes responsabilités relatives à l'utilisation de ce framework. De plus, Infini Software ne pourra nullement être tenu responsable de l'utilisation des informations présentes dans ces tutoriaux.

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.