Vous êtes sur la page 1sur 7

Les JSP

N. Chenfour

3.1 Introduction
Les JSP (Java Server Pages) constituent une technologie Java permettant la gnration de pages web dynamiques. Une JSP est habituellement constitue :

de donnes et de tags HTML de tags JSP de scriptlets (code Java intgr la JSP)

Les fichiers JSP possdent par convention lextension .jsp.

3.2 Les Tags JSP


Il existe trois types de tags :

tags de directives : <%@ ... %> tags de scripting : ils permettent dinsrer du code Java dans la servlet gnre. tags dactions : <jsp:>

Remarque : Les noms des tags sont sensibles la casse.

3.3 Les tags de directives <%@ ... %>


Syntaxe : <%@ directive attribut="valeur" ... %> Il existe 3 directives : Directive page include taglib Description permet de dfinir des options de configuration permet dinclure des fichiers dans la JSP permet de dfinir des tags personnaliss

N. Chenfour

3.3.1 La directive page


Cette directive doit tre utilise dans toutes les pages JSP : elle permet de dfinir des options qui sappliquent toute la JSP. Quelques options importantes de la directive Page : Option errorPage extends import langage Exemples : <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <%@page import="java.util.Vector"%> Valeur URL ouvrir en cas derreur Une classe Une classe ou un package.*, peuvent tre spars par , Par dfaut "java"

contentType Une chane contenant le type mime

3.3.2 La directive include


Cette directive permet dinclure un fichier dans une JSP. Le fichier inclus peut tre un fragment de code JSP, HTML ou Java. Si le fichier inclus est un fichier HTML, celui ci ne doit pas contenir de tag <HTML>, </HTML>, <BODY> ou </BODY> Syntaxe : <%@ include file="chemin du fichier" %>

3.3.3 La directive taglib


Cette directive permet de dclarer lutilisation dune bibliothque de tags personnaliss. Cette directive possde deux attributs :

prefix : un prfix qui servira despace de noms pour les tags de la bibliothque dans la JSP uri : lURI de la bibliothque telle que dfinie dans le fichier de description

Exemple : <%@ taglib prefix="s" uri="/struts-tags" %>

3.4 Les tags de scripting


Il existe trois tags pour insrer du code Java : Tag de dclaration : le code Java est inclus dans le corps de la servlet gnre. Ce code peut tre la dclaration de variables dinstances ou de classes ou la dclaration de mthodes. Syntaxe : <%! ... %> Tag dexpression : Evalue une expression et insre le rsultat sous forme de chane de caractres dans la page web gnre. Syntaxe : <%= ... %>

Tag de scriptlets : par dfaut, le code Java est inclus dans la mthode service() de la servlet. <% ... %> Exemple : <body> <% for(int i=0;i < 20; i++) response.getWriter().println(i + "<br>"); %> </body>

3.5 Les variables implicites


Les spcifications des JSP dfinissent plusieurs objets utilisables dans le code dont les plus utiles sont : Object out request response session Classe
javax.servlet.jsp.JspWriter javax.servlet.http.HttpServletRequest javax.servlet.http.HttpServletRequest javax.servlet.http.HttpSession

Rle
Flux en sortie de la page HTML gnre Contient les informations de la requte Contient les informations de la rponse Gre la session

3.6 Les tags de commentaires


Il existe deux types de commentaires avec les JSP : les commentaires visibles dans le code HTML syntaxe : <!-- ... <%= expression %> ... --> les commentaires invisibles dans le code HTML syntaxe : <%-- ... --%>

3.7 Tags dactions 3.7.1 Le tag <jsp:useBean>


Le tag <jsp:useBean> permet de localiser une instance ou dinstancier un bean pour lutiliser dans la JSP. Syntaxe : <jsp:useBean attribut="valeur" > ... </jsp :useBean> Liste de quelques attributs : Attribut id scope class type description Nom de la variable qui va contenir la rfrence sur le bean Porte durant laquelle le bean est dfini et utilisable. Les valeurs possibles sont : page|request|session|application Classe du bean : pleinement qualifie : nom.du.package.Classe Gnralement linterface de base : mre de la classe du bean

Exemple : <jsp:useBean id="produit01" scope="session" class="com.acs.lab.jsp.Produit" />

3.7.2 Le tag <jsp:setProperty >


Le tag <jsp:setProperty> permet daffecter des valeurs aux proprits du Bean (en utilisant implicitement leur setters). Syntaxe : Il existe trois faons de mettre jour les proprits soit partir des paramtres de la requte soit avec une valeur : Affecter automatiquement toutes les proprits avec les valeurs des paramtres correspondants de la requte. Dans ce cas, les noms des proprits et ceux des paramtres doivent tre identiques. <jsp:setProperty name="idDuBean" property="*" /> alimenter automatiquement une proprit avec le paramtre de la requte correspondant. Si lattribut param est omis, alors le nom de la proprit et celui du paramtre doivent tre identiques. <jsp:setProperty name="idDuBean" property=" nomDeLaProprit " [param=" nomDuparamtre "] />

alimenter une proprit avec la valeur prcise <jsp:setProperty name="idDuBean" property="nomDeLaProprit" value="{string | <%= expression%>}" />

3.7.3 Le tag <jsp:getProperty>


Permet de rcuprer et dafficher la valeur dune proprit du bean. Syntaxe : <jsp:getProperty name="idDuBean" property=" nomProprit" /> Lattribut name indique le nom du bean tel quil a t dclar dans le tag <jsp:useBean>. Lattribut property indique le nom de la proprit en question.

3.7.4 Le tag de redirection <jsp:forward>


Cette balise permet de rediriger la requte vers une autre URL pointant vers un fichier HTML, JSP ou un servlet. Syntaxe : <jsp:forward page="{relativeURL | <%= expression %>}" />

3.7.5 Le tag <jsp:include>


Ce tag permet dinclure le contenu gnr par une JSP ou une servlet dynamiquement au moment ou la JSP est execute. Cest la diffrence avec la directive include avec laquelle le fichier est insr dans la JSP avant la gnration de la servlet. Syntaxe : <jsp:include page="relativeURL" />

Vous aimerez peut-être aussi