Ellipse 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 Ellipse
   Paramétrage du module de statistiques
   Paramétrage du moteur d'indexation
   Paramétrage via le plugin Ellipse

Bien que n'utilisant pas l'ensemble des technologies web proposées par la plate-forme J2EE, le framework Ellipse s'appuie néanmoins sur la notion de servlets. Ce choix permettant de garantir que les pages Web développées via Ellipse 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 Ellipse 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 Ellipse 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.webapplications.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 Ellipse) 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 - Ellipse Sample</display-name>
10     <description>Ellipse 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_URL</param-name>
22     	<param-value>Trace.wp</param-value>
23     </context-param>
24 
25 
26     <servlet>
27       <servlet-name>Ellipse Servlet</servlet-name>
28       <servlet-class>corelib.services.web.webapplications.ControllerServlet</servlet-class>
29     </servlet>
30 
31     <servlet-mapping>
32         <servlet-name>Ellipse 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 Ellipse

Le framework Ellipse 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 Ellipse

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_URL 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 corelib/services/web/statistics.log 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 365 Nombre de jours de statistiques mémorisés dans le fichier XML.
STATISTICS_URL Stats.wp URL permettant d'invoquer la page web de présentation des statistiques

Paramétrage du moteur d'indexation

Le framework Ellipse 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.

Paramétrage via le plugin Ellipse

Le fichier WEB-INF/web.xml peut, bien entendu, être édité à la main. Néanmoins, l'utilisation du plugin Ellipse pour Eclipse vous simplifiera grandement la vie. A titre d'exemple, considérons la construction d'un nouveau projet Web basé sur le framework Ellipse : pour ce faire, veuillez suivre les étapes suivantes :

  1. A partir du menu "File", créez un nouveau projet de type "Java Web Project". Pour ce faire cliquez sur "Other..." : la boîte de dialogue ci-dessous apparaît : déroulez le dossier "Java Web Development" et sélectionnez-y "Java Web Project".
  2.  
     
  3. Une seconde boîte de dialogue apparaît : elle permet de saisir les caractéristiques de votre projet. Tout comme dans la capture d'écran ci-dessous, donnez-lui un nom, pourquoi pas "Demo".
  4.  
     
  5. Notez qu'il vous est possible de spécifier le serveur Web (ou le serveur d'applications Java EE) utilisé. Si vous utilisez Tomcat, configurez alors votre projet pour qu'il utilise votre serveur. Cliquez sur le bouton "Next" : une nouvelle boîte de dialogue apparaît pour continuer la configuration de votre projet Web.
  6.  
     
  7. Vérifiez-y bien que la facette Ellipse soit sélectionnée. Puis cliquez sur "Next" et encore une fois sur "Next" : la boîte de dialogue suivante doit apparaître.
  8.  
  9. Vous pouvez maintenant configurer les trois services intégrés au framework Ellipse : le service de traces, le service de statistiques et le service d'indexation. Notez bien qu'on retrouve les éléments présentés plus haut dans ce document.
ATTENTION : Ellipse Framework 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..2010 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.