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 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137
|
package betabou.servlets.client;
import javax.servlet.http.HttpServlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Enumeration;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.ServletConfig;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import betabou.javabean.Client;
public class ServletAuthentification extends HttpServlet {
//variables de classe
String ident=null;
String mdp=null;
String emailadministrateur=null;
//route
String urlAuthentification=null;
String urlErreurs=null;
String urlBienvenue=null;
public void init()
{
//récupere les mot passe et ident qui st dans web.xml
ServletConfig config = getServletConfig();
ident = (String)config.getInitParameter("defautIdentifiant");
mdp = (String)config.getInitParameter("defautMotDePasse");
////récupe var accéssible a tous
ServletContext servletContext = getServletContext();
emailadministrateur = servletContext.getInitParameter("emailAdministrateur");
//récupere les routes
urlAuthentification = (String)config.getInitParameter("urlAuthentification");
urlErreurs = (String)config.getInitParameter("urlErreurs");
urlBienvenue = (String)config.getInitParameter("urlBienvenue");
}
public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException, IOException
{
//récup ident mdp
String identifiant = request.getParameter("identifiant");
String motdepasse = request.getParameter("motdepasse");
//déclaration d'une liste d'erreur
ArrayList<String> erreursParametres = new ArrayList<String>();
PrintWriter out = response.getWriter();
//pas d'ident
if(identifiant==null) {
if(urlAuthentification==null) {
throw new ServletException("Le parametre[urlAuthentification] n'a pas été utilisé");
//erreursParametres.add("Le parametre [identifiant] est null");
}
else
{
getServletContext().getRequestDispatcher(urlAuthentification).forward(request, response);
}
return;
}
//identifiant vide
if(identifiant.equals(""))
erreursParametres.add("Le parametre [identifiant] est vide");
if(motdepasse==null){
if(urlAuthentification==null) {
throw new ServletException("Le parametre[urlAuthentification] n'a pas été utilisé");
//erreursParametres.add("Le parametre [identifiant] est null");
}
else
{
getServletContext().getRequestDispatcher(urlAuthentification).forward(request, response);
}
return;
}
//mot de passe vide
if(motdepasse=="")
erreursParametres.add("Le parametre [mot de passe] est vide");
if((identifiant!=null && identifiant.equals(ident)) && (motdepasse!=null && motdepasse.equals(mdp)))
{
if(urlBienvenue==null){
throw new ServletException("Le parametre [urlBienvenue] n'a pas été initialisé");
}
else {
//injecter dans la requete les parametres pour quelle puisse les traiter
request.setAttribute("identifiant", identifiant);
request.setAttribute("mot de passe", motdepasse);
//authentification correcte redirection
getServletContext().getRequestDispatcher("/bienvenue.jsp").forward(request,response);
}
}
//authentification incoreecte
else
{
erreursParametres.add("Les coordonnées de l'utilisateur sont incorrecte");
}
// en cas d'erreurs, redirection avec le RequestDispatcher
if(erreursParametres.size()>0){
if(urlErreurs==null){
throw new ServletException("Le parametre [urlErreurs] n'a pas été initialisé");
}
else {
request.setAttribute("erreurs", erreursParametres);
getServletContext().getRequestDispatcher(urlErreurs).forward(request, response);
}
}
}
public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
{
doGet(req,res);
}
} |
Partager