17 Fév2016
Page d'authentification en utilisant les Scriptlets JSP
Objectifs :
- Découvrir les Scriptlets.
- Utiliser les sessions.
Énoncé:
Dans ce TP, nous allons faire une authentification avec un login et un mot de passe en utilisant un Java Bean représenté par la classe User. Cette authentification va être faite avec les scriptlets JSP.
- Créer la classe User (login , password).
- Créer le formulaire d'authentification (Voir Figure 1).
- Au clic sur le bouton "Envoyer" les données seront transmises vers la page "load.jsp", dans cette page créer un objet user et enregistrer le dans une session.
- Créer une page web "affiche" permettant d'afficher le login et le mot de passe que l'utilisateur a saisi (Voir Figure 2).
La classe User :
package ma.projet; public class User { private String login; private String password; public String getLogin() { return login; } public void setLogin(String login) { this.login = login; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
Formulaire d’authentification : login.html
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Authentification</title> </head> <body> <form action="load.jsp" method="post"> Login:<input type="text" name="login"/><br/> Mot de passe:<input type="password" name="password"/><br/> <input type="submit" name="Envoyer" value="Envoyer"/> </form> </body> </html>
Page JSP : load.jsp :
<%@page import="ma.projet.User"%> <% String l = request.getParameter("login"); String p = request.getParameter ("password"); User u = new User(); u.setLogin(l); u.setPassword(p); session.setAttribute("user",u); response.sendRedirect("affiche.jsp"); %>
Page JSP : affiche.jsp :
<%@ page language="java" %> <%@ page import="ma.projet.*" %> <html> <head> <title>Page d'accueil</title> </head> <body> <% User u = (User)session.getAttribute("user"); %> <h1 align='center'> Votre Login est :<%= u.getLogin()%><br/> Votre mot de passe est :<%= u.getPassword()%><br/> </h1> </body> </html>