package controleur; import Metier.Principale; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; public class Connexion extends HttpServlet { public static final String VUE_CONNEXION = "/Connexion.jsp"; public static final String VUE_ACCUEIL = "/Accueil.jsp"; public static final String CHAMP_LOGIN = "login"; public static final String CHAMP_MDP = "mdp"; public static final String ATT_ERREURS = "erreurs"; public static final String ATT_RESULTAT = "resultat"; protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { /* Affichage de la page de connection */ this.getServletContext().getRequestDispatcher(this.VUE_CONNEXION).forward( request, response ); } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { /* Création ou récupération de la session */ HttpSession session = request.getSession(); String resultat; boolean isConnected = true; boolean erreurs = false; /* Récupération des champs du formulaire. */ String login = request.getParameter(this.CHAMP_LOGIN); String mdp = request.getParameter(this.CHAMP_MDP); Principale controleur = Metier.MetierFactory.getPrincipale(); /* Verification des champs du formulaire */ if(!controleur.connexion(login, mdp)){ isConnected = false; erreurs = true; } /* Initialisation du résultat global de la connection */ if(!erreurs){ resultat = "<div class=\"alert alert-success alert-dismissable\">\n" + " <button type=\"button\" class=\"close\" data-dismiss=\"alert\" aria-hidden=\"true\">×</button>\n" + " <strong>Felicitation !</strong> Vous êtes connecté.\n" + "</div>"; request.setAttribute(this.ATT_RESULTAT, resultat); session.setAttribute( "connexion", isConnected ); this.getServletContext().getRequestDispatcher(this.VUE_ACCUEIL).forward( request, response ); } else { resultat = "<div class=\"alert alert-warning alert-dismissable\">\n" + " <button type=\"button\" class=\"close\" data-dismiss=\"alert\" aria-hidden=\"true\">×</button>\n" + " <strong>Attention !</strong> Identifiants incorrect\n" + "</div>"; request.setAttribute(this.ATT_RESULTAT, resultat); this.getServletContext().getRequestDispatcher(this.VUE_CONNEXION).forward( request, response ); } } @Override public String getServletInfo() { return "Short description"; }// </editor-fold> }