OK, voici en fait le TP simple. C'est juste un TP de formation
1) J'ai une Servlet simple qui contient aussi un petit code HTML qu'elle doit générer avec deux valeurs (Nom et Age).
2) J'ai mon fichier web.xml où je définis ces valeurs par défaut qui devront s'afficher au chargement de la Servlet.
3) Dans ma Servlet, j'ai donc la fonction init() qui récupère ces paramètres par défaut et les alloue à la Servlet afin de les passer aux variables HTML
VOICI LE FICHIER WEB.XML
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| <?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>Personne</display-name>
<servlet>
<servlet-name>formulairepersonne</servlet-name>
<servlet-class>packagePersonne.MyFirstServlet</servlet-class>
<init-param>
<param-name>defaultNom</param-name>
<param-value>Jean Claude Le Bourgeois</param-value>
</init-param>
<init-param>
<param-name>defaultAge</param-name>
<param-value>35 ans</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>formulairepersonne</servlet-name>
<url-pattern>/MyFirstServlet/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app> |
VOICI LE CODE DE LA SERVLET
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
| package packagePersonne;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class MyFirstServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public MyFirstServlet() {
super();
}
private String defaultNom = null;
private String defaultAge = null;
public void init(ServletConfig config) throws ServletException {
defaultNom = config.getInitParameter("defaultNom");
System.out.println(defaultNom);
if (defaultNom == null)
defaultNom = "PAS DE NOM PAR DEFAUT";
defaultAge = config.getInitParameter("defaultAge");
if (defaultAge == null)
defaultAge = "PAS D'AGE PAR DEFAUT";
}
public ServletConfig getServletConfig() {
return null;
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String nom = request.getParameter("txtNom");
if (nom == null) {
nom = defaultNom;
nom= defaultNom;
}
String age = request.getParameter("txtAge");
if (age == null) {
age = defaultAge;
}
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println(
"<html>"+
"<head>"+
"<title>Personne - formulaire</title>"+
"</head>"+
"<body>"+
"<center>"+
"<h2>Personne - formulaire</h2>"+
"<hr>"+
"<form action='' method='post'>"+
"<table>"+
"<tr>"+
"<td>Nom</td>"+
"<td><input name='txtNom' value='"+nom+"' type='text' size='30'></td>"+
"</tr>"+
"<tr>"+
"<td>Age</td>"+
"<td><input name='txtAge' value='"+ age +"' type='text' size='3'></td>"+
"</tr>"+
"</table>"+
"<table>"+
"<tr>"+
"<td><input type='submit' value='Envoyer'></td>"+
"<td><input type='reset' value='Rétablir'></td>"+
"<td><input type='button' value='Effacer'></td>"+
"</tr>"+
"</table>"+
"</form>"+
"</center>"+
"</body>"+
"</html>" );
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
} |
Lorsque je change donc les valeurs par défaut dans mon fichier web.xml par exeemple je met
defaultNom à Jean marie et defaultAge à 50
, je rentre dans Eclipse, j'exécute la Servlet, j'ai toujours Jean Claude Le Bourgeois et 35 ans qui s'affichent
Partager