Vous êtes sur la page 1sur 4

TP 3: Les applications JEE avec le pattern

MVC – Les servlet et les JSP


Ce document résume les code snippets utiliser dans JEE_DEMO3:

TP 3: Les applications JEE avec le pattern MVC – Les servlet et les JSP
Etape 2 : Création et redirection dans les servlets
Ajouter un lien vers la page de « Contact.java » :
Création de la servlet "Contact.java":
Etape 3 : Création d’un formulaire (contenu HTML) dans une page JSP
Etape 4 : Création d’un modèle
Etape 6 : Obtenir les données du formulaire

NB: Etape 1 est réalisé à l'aide de la GUI de l'IDE Eclipse

Etape 2 : Création et redirection dans les servlets


Ajouter un lien vers la page de « Contact.java » :

Dans le fichier "webapp/web-inf/views/Index.jsp":

<ul>
...
<li><a href="Contact">Contact Nous</a></li>
</ul>

Création de la servlet "Contact.java":

Dans le nouveau fichier crée "src/main/java/com.controllers.controllers/Contact.java":

...
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
RequestDispatcher view = request.getRequestDispatcher("WEB-
INF/views/Contact.jsp");
view. forward(request,response);
}
...
Etape 3 : Création d’un formulaire (contenu HTML) dans une
page JSP
Dans le fichier "webapp/WEB-INF/views/Contact.jsp", ajouter un lien vers le page de styles
"ressources/CSS/styles.css":

<head>
...
<link rel="stylesheet" href="ressources/CSS/styles.css"/>
<title>JEE DEMO - Contact</title>
</head>

Créer un formulaire de contact dans la page « webapp/WEB-INF/views/Contact.jsp »:

<div class="container">
<div>Contactez nous</div>
<form action="Contact" method="post">
<div class="inputField">
<label for="first-name" class="inputLabel">Nom:</label>
<input name="first-name" type="text"/>
</div>

<div class="inputField">
<label for="last-name" class="inputLabel">Prenom:</label>
<input name="last-name" type="text"/>
</div>

<div class="inputField">
<label for="email" class="inputLabel">Email:</label>
<input name="email" type="email"/>
</div>

<div class="inputField">
<label for="gender" class="inputLabel">Sexe: </label>
<select name="gender">
<option value="Male">Homme</option>
<option value="Female">Femme</option>
</select>
</div>

<div class="inputField">
<label for="msg" class="inputLabel">Message:</label>
<textarea rows="5" cols="30" name="msg"></textarea>
</div>

<div class="inputField" id="submitField">


<input id="submitBtn" type="submit" value="Envoyer"></input>
</div>
</form>
</div>
Etape 4 : Création d’un modèle
Dans le nouveau fichier crée "com.emsi.models/Contact.java", ajouter le modéle Contact:

public class Contact {


private String firstName;
private String lastName;
private String email;
private Gender gender;
private String msg;
private Date dateMsg;

public Contact() {
// TODO Auto-generated constructor stub
}

Importer la bibliothèque:

import java.util.Date;

Ajouter le type Enum dans le pac

public enum Gender {


Homme,Femme
}

Ajouter les getters et les setters des attributs:

public String getFirstName() {


return firstName;
}

public void setFirstName(String firstName) {


this.firstName = firstName;
}

public String getLastName() {


return lastName;
}

public void setLastName(String lastName) {


this.lastName = lastName;
}

public String getEmail() {


return email;
}

public void setEmail(String email) {


this.email = email;
}

public Gender getGender() {


return gender;
}

public void setGender(Gender gender) {


this.gender = gender;
}

public String getMsg() {


return msg;
}

public void setMsg(String msg) {


this.msg = msg;
}

public Date getDateMsg() {


return dateMsg;
}

public void setDateMsg(Date dateMsg) {


this.dateMsg = dateMsg;
}

Ajouter la méthode toString() dans la classe Contact:

public String toString() {


return "Contact [firstName=" + firstName + ", lastName=" + lastName + ",
email=" + email + ", gender=" + gender + ", msg=" + msg + ", dateMsg=" +
dateMsg + "]";
}

Etape 6 : Obtenir les données du formulaire


Dans le fichier "com.emsi.models/Contact.java":

protected void doPost(HttpServletRequest request, HttpServletResponse response)


throws ServletException, IOException {
// TODO Auto-generated method stub
String firstName = request.getParameter("firstName");
String lastName = request.getParameter("lastName");
String email = request.getParameter("email");
String gender = request.getParameter("gender");
String msg = request.getParameter("msg");
String dateMsg;

System.out.println("firstName: " + firstName);


doGet(request, response);
...
}

Vous aimerez peut-être aussi