mercredi 11 avril 2007

Décorer une application web J2EE avec SiteMesh

SiteMesh est un framework de décoration d'applications web J2EE. Il permet d'appliquer de manière très simple un modèle de mise en page aux pages html issues d'une application J2EE.

Ainsi le processus pour appliquer une décoration automatique des pages avec SiteMesh est le suivant :


  • 1) Constituer le modèle de pages sous la forme d'une page HTML et de feuilles de styles CSS en positionnant les éléments qui le constituent : en-tête, menus, ...
    Des modèles préconçus peuvent être récupérés sur les sites qui proposent des templates open source (oswd, opensourcetemplates, openwebdesign, ...)

  • 2) Transformer le modèle de pages en page JSP et insérer les tags spécifiques SiteMesh (, , ...) destinés à indiquer à quels endroits seront fusionnés les éléments de la page HTML à décorer.

  • 3) Intégrer tous les éléments nécessaires dans l'application web :
    • Copier les fichiers du modèle de pages dans l'application web (voir doc).

    • Rajouter les fichiers de configuration SiteMesh (voir doc).

    • Configurer le filtre de servlet SiteMesh dans le descripteur web.xml de l'application Web (voir doc).

  • SiteMesh est alors près à décorer les pages de l'application web :

  • 4) Lorsqu'une page HTML est générée par l'application web,

  • 5) celle-ci est interceptée par SiteMesh qui récupère le contenu des différentes parties de la page (head, body, ...) et les insère aux positions marquées dans le modèle de pages.

  • 6) Le résultat de la fusion de la page HTML et du modèle, c'est-à-dire la page décorée est renvoyé à l'utilisateur.

En paramétrant SiteMesh, des modèles de pages différents peuvent être appliqués en fonction des URL d'appel des pages dans l'application Web. De plus, un modèle de de page étant lui-même une page JSP, il peut lui aussi contenir des éléments dynamiques dépendants du contexte d'appel.

En conclusion, SiteMesh est un framework simple et efficace. Que demander de plus ?

Aucun commentaire: