Sunteți pe pagina 1din 28

Chapitre 3 – Les Vues ou JSP

1 Saloua Ben Yahia


Objectifs
Introduire la notion de JSP
La syntaxe JSP
Exemples de JSP
Utilisation Conjointe avec les Servlets

Saloua Ben Yahia 2


Contenu d’une page Web

Saloua Ben Yahia 3


Page web
Plus facile a maitenic avec des outils
orientés web design
Le contenu dynamique est plus aisément
réalisé de manière programmatique

Saloua Ben Yahia 4


Scripting côté serveur
La page est « calculée » et traitée cô té serveur
avant d’être retournée (que du html) au client
Du code sera embarqué dans la page pour
réaliser les traitements dynamiques
Exemples de technologies
ASP : Active Server Pages
JSP : Java Server Pages
Les deux pages ressemblent à du HTML mais
avec du code en plus

Saloua Ben Yahia 5


Exemple de JSP

Saloua Ben Yahia 6


La JSP est convertie en une Servlet
(JSP_Servlet)
Si la JSP_Servlet est chargée et que la
page est appelée la méthode service est
invoquée
Si la JSP_Servlet n’est pas chargée elle le
saera à l’appel de la JSP correspondante et
la méthode service est invoquée

Saloua Ben Yahia 7


Compilation de la JSP

Saloua Ben Yahia 8


JSP Syntaxe
Directives
Scriptlets
Expressions
Use Beans (vois plus tard)

Autre possibilité avec les tag lib

Saloua Ben Yahia 9


Directives

Saloua Ben Yahia 10


Exemple de directives

Saloua Ben Yahia 11


Scriptlets

Saloua Ben Yahia 12


Expressions

Saloua Ben Yahia 13


Exemple Complet

Saloua Ben Yahia 14


Suite…

Saloua Ben Yahia 15


Suite

Saloua Ben Yahia 16


Le probleme du cache
La JSP comme la servlet retourne une
page dynamique.
La réponse ne doit pas être « cachée » ni
pas le navigateur ni par les proxy
intermédiaires
Utiliser les variable de cache dans la JSP
comme dans la Servlet pour désactiver le
mécanisme

Saloua Ben Yahia 17


Problème du cache Rappel
URL 1 -> retourne une HTTPResponde 1 (contenant
du HTML 1)
Le contenu de la HTTPResponse1 va être « cachée »
soit :
Dans le DD du client
Dans la mémoire du navigateur
Dans les proxy intermédiare
A la prochaine demande de URL1 le navigateur
affichera le HTML1 alors qu’entretemps la même
URL1 retourne un autre HTML2 (page dynamique)

Saloua Ben Yahia 18


Caching

Saloua Ben Yahia 19


Appel d’une JSP a partie d’une Servlet
Rappel :
Une JSP est une Vue dynamique (.jsp)
C’est une servlet qu’on écrit comme si on
écrivait une page HTML
Normalement Elle s’exécute dans le SA
(même contexte que la Servlet)

Saloua Ben Yahia 20


JSPs et Servlets dans un même contexte : le
SA

JSP

Saloua Ben Yahia 21


Type d’URL
URL absolue : contient le chemin
complet :
http://localhost:8080/monProjet/maServl
et
URL relative :
en déduisant le serveur web et le répertoire
courant ex : /maJSP.jsp
En déduisant la racine du serveur :
/MonProjet/Hello.html
Saloua Ben Yahia 22
Types uRL
URL Absolue: changement de serveur
http
URL Relative : même serveur http

Saloua Ben Yahia 23


Appel d’une Page Statique par une Servlet
respons.sendRedirect(URL relative ou
Absolue d’une page statique ou
dynamique)
Même serveur : relative
Autre serveur : absolue
Généralement utilisé pour des redirection
statiques
Perte de la requête/réponse d’origine

Saloua Ben Yahia 24


Appel de la JSP par la Servlet

Syntaxe
getServletContext().getRequestDispatcher(« 
URL»).forward(request,response)
URL relative si même serveur web/même container
URL absolue sinon

Même requête que la requête arrivant du


client (simple transfert)

Saloua Ben Yahia 25


Modèle MVC

nom, prenom

nom, prenom
email

Saloua Ben Yahia 26


Sauvegarde/lecture d’Objet dans la
HttpServletRequest
request.setAttribute(String clef,Object o )
Durée de vie courte : durée de vie de la
request/response
La JSP récupère les Beans dans la request
Lire dans la request (JSP)
(Cast)request.getAttribute(«  clef»)

Saloua Ben Yahia 27


Modèle MVC

nom, prenom

nom, prenom
email

Saloua Ben Yahia 28

S-ar putea să vă placă și