Fiches / Articles

Cadre Fonctionnel

Développement de JSP et exploitation de template

Cadre Technique

NT/WebLogic 6.1

Identifiant 

SYS_JSP_03

Référent technique 


Version 

1.0

Auteur 

Alexandre Brillant

Date

23/10/01

Source

Documentation WebLogic 6.1

Un template sert à simplifier le processus de construction d'une page. Il définit un modèle de présentation JSP avec des zones de données que l'utilisateur complète en exploitation.

Les avantages :

Un mécanisme de template repris est proposé sur le site de sun http://developer.java.sun.com/developer/technicalArticles/javaserverpages/jsp_templates/. Ce mécanisme fonctionne à base de tagLib avec trois types de tag :

Les données mise à jour dans un template peuvent être :

Exemple de définition du template :


<%-- ***************** JSP DIRECTIVE ****************** --%>

<%-- 
Auteur : Alexandre Brillant
Date de creation : 18/10/01
Version : 1.0
Role : Exploitation de template
--%>

<%@ page language="java" info="Template"
contentType="text/html; charset="iso-8859-1""
isErrorPage="false" errorPage=""error.jsp"" %>

<%@taglib uri="template.tld" prefix="template"%>

<%-- ******************* HTML ***************** --%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01
Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>
  <meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1">
  <meta http-equiv="Content-Language" content="fr">
  <title><template:get name='titre'/></title>
  <link href="style.css" rel="stylesheet"
type="text/css">
 </head>
<body>

<template:get name="contenu"/>

</body>
</html>

Ce template contient deux champs titre et contenu. Le premier correspondra à un texte simple, tandis que le second représentera une autre page HTML.

Pour exploiter ce template, il est important de modifier le fichier web.xml présent dans le répertoire WEB-INF avec au moins :


<?xml version="1.0" ?>

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web
Application 1.2//EN"
"http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">

<web-app>

<taglib>

    <taglib-uri>template.tld</taglib-uri>

    <taglib-location>

	/WEB-INF/lib/template.jar

    </taglib-location>

</taglib>

</web-app>

Ce fichier est valable pour toute exploitation de template.

Exemple d'exploitation du template :


<%-- ***************** JSP DIRECTIVE ****************** --%>

<%-- 
Author : Alexandre Brillant
Creation Date : 18/10/01
Version : 1.0
Role : Exploitation de template
--%>

<%@ page language="java" info="Test"
contentType="text/html; charset="iso-8859-1""
isErrorPage="false" errorPage=""error.jsp"" %>

<%@taglib uri="template.tld" prefix="template"%>

<template:insert template="template.jsp">

  <template:put name="titre"
content="Résultat template" direct=""true"/>

  <template:put name="contenu"
content="page1.htmll"/>

</template:insert>

Cet exemple va permettre la génération d'une page HTML avec en titre Résultat template et en contenu la page page1.htmll. Le contenu peut être une page HTML ou une autre page JSP.

L'attribut direct avec la valeur « true » est obligatoire pour les valeurs textuelles.