Dans la section précédente, nous avons découvert la notion de Servlet et de page JSP. Afin d’enrichir nos applications, nous allons continuer notre étude en utilisant des formulaires et la méthode doPost.
Création d’un formulaire en jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<body>
<h1>Inscription</h1>
<form action="inscription" method="post">
<div>
<label for="nom">Nom :</label>
<input type="text" id="nom" name="nom">
</div>
<div>
<input type="submit" value="S'inscrire">
</div>
</form>
</body>
</html>- La valeur dans
actionsera l’endpoint interrogé par l’actionPOST namedans les input correspondent au nom des paramètres passés dans la requêtes


curl 'http://localhost:8092/R401-EXO-formulaire/inscription' -X POST --data-raw 'nom=adrien'
Servlet
@WebServlet("/inscription")
public class InscriptionServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// Récupération des paramètres du formulaire
String nom = request.getParameter("nom");
request.setAttribute("message", "Inscription réussie pour " + nom);
// Redirection vers la page de confirmation
RequestDispatcher dispatcher = request.getRequestDispatcher("confirmation.jsp");
dispatcher.forward(request, response);
}
}- le
setAttributnous permet d’ajouter un attribut à la requête qui sera ensuite récupérer dans la page de confirmation
Page de confirmation
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<body>
<h1>Confirmation</h1>
<p>${message}</p>
</body>