Première partie Bibliothèques particulières - Deptinfo

Première partie
Bibliothèques particulières
1
Chapitre 1
Java Server Pages et Servlets
On trouvera un répertoire d’exemples à l’adresse :
http://www.iut.univ-paris8.fr/~rosmord/DOCS/demojsp.tgz
Ces exemples sont conçus et testés avec tomcat4, sous debian. Pour pouvoir les essayer :
1. allez dans répertoire testTomcat ;
2. lancez le script : ./tom start ;
3. attendez un peu ;
4. connectez-vous à l’adresse http://localhost:9180/index.html
1.1 Architecture d’une application web
Rappel sur notions de client et serveur ;
javascript et les applets java s’exécutent sur le client ;
au contraire, les applications cgi, les scripts php, les jsp et les servlets s’exécutent
sur le serveur.
Exemple d’un script php : le client demande une page, qui est en fait un script php. Le
serveur exécute le script, dont le résultat (typiquement une page html) est expédié comme
réponse, puis visualisé par le client.
1.2 Introduction aux jsp
1.2.1 principes
Le principe d’une jsp est similaire à celui d’un script php. Il s’agit de texte html mélangé à
du code, écrit en java dans le cas des jsp.
Une page jsp est traitée par le serveur (tomcat par exemple), qui crée le code d’une classe
java associée. Par exemple, pour une page jsp nommée test.jsp, tomcat crée une classe
3
4CHAPITRE 1. JAVA SERVER PAGES ET SERVLETS
test$jsp.java. À chaque page jsp correspond donc une classe java. Le code html et une par-
tie du code jsp proprement dit sont utilisés par le serveur pour produire la méthode _jspService,
qui est appelée à l’exécution de la jsp pour créer la page résultat.
1.2.2 Balises principales des jsp
<% %> : cette balise encadre des instructions java qui feront partie de la méthode _jspService
utilisée pour produire la page résultat :
<html><body>
bonjour, voici la valeur de 3 + 4 :
<% // du code java
int x= 3 + 4;
out.write("" + x);
%>
</body></html>
<%= %> : cette balise encadre une expression java. La valeur de cette expression sera affichée
dans la page résultat :
<html><body>
bonjour, voici la valeur de 3 + 4 :
<%= 3 + 4 %>
</body></html>
<%! %> : cette balise permet d’ajouter des méthodes et des champs à la classe qui correspond
à la jsp.
<%@ page ... %> : la balise « directive de page » sert à configurer un certain nombre d’op-
tions pour la jsp. Parmis celles-ci, citons :
<%@ page import="..." %> permet de réaliser d’importer des packages java, comme
par exemple :
<%@ page import="java.sql.*" %>
<%@ page include="toto.jsp" %> : inclut le fichier toto.jsp.
<%@ page errorPage="toto.jsp" %> : en cas de levée d’exception sur cette
page, on affichera toto.jsp. La variable exception contiendra l’objet exception cor-
respondant.
<%@ page isErrorPage="true" %> : signifie que cette page est une page de trai-
tement d’exception (voir directive précédente).
1.2.3 Les champs d’une jsp
Dans une jsp, les variables suivantes sont définies :
1.3. INTRODUCTION AUX SERVLETS 5
out : un objet de classe JspWriter (qui descend de PrintWriter). Permet d’écrire dans
le résultat. Les méthodes print et println sont définies pour les principaux types de
bases.
request : objet de type HttpServletRequest, qui représente la requête qui a amené sur
cette page. Deux méthodes sont particulièrement utiles : getParameter(String name)
qui renvoie la valeur d’un paramètre (un champ d’un formulaire html). Pour les champs
multi-valués, on peut utiliser getParameterValues(String name).
response : objet de type HttpServletResponse, représentant la page renvoyée au client.
Dispose des méthodes setContentType, qui permet de spécifier le type de données
renvoyées, getWriter et getOutputStream qui permettent de récupérer un flux sur
lequel écrire la réponse.
page : la page
session : la session.
application : l’application.
config
pageContext
1.2.4 Installation des jsp
Les jsp doivent se trouver dans des sous-répertoires (ou en-dessous) du répertoire webapps ;
leur nom doit se terminer par le suffixe jsp.
1.3 Introduction aux servlets
1.3.1 principe des servlets
Une servlet est une classe java.
La requête (provenant généralement d’un formulaire) est traitée par la méthode doPost ou
par la méthode doGet de la servlet, selon le type de requête. La servlet construira ensuite la
réponse, en manipulant un objet de classe HttpServletResponse.
1.3.2 Installation des servlets
L’installation des servlets est plus complexe que celle des jsp. Il nous faut donc détailler plus
précisément le répertoire webapps. Ce répertoire contient des sous-répertoire, chacun d’eux
étant une « application » web. Chaque sous-répertoire peut contenir un nombre quelconque de
jsp et de servlets. Si vous regardez le contenu de test1, vous constaterez que rien n’indique a
priori qu’il contient une servlet :
bash-2.05a$ pwd
/home/rosmord/Prog/testTomCat/webapps
1 / 21 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !