mardi 5 mai 2015

Register Servlet

Please I need your help. I'm using Netbeans to develop an application requiring authentication. However, my Registration Servlet doesn't work apparently. Here is the code :

public class RegistController extends HttpServlet {

Connection conn = null;
String url = "jdbc:mysql://localhost:3306/";
String dbName = "affablebean";
String driver = "com.mysql.jdbc.Driver";
String userName = "root";
String password = "admin";
PreparedStatement prestat = null;
ResultSet pw = null;
Statement stm = null;
 protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");

    try (PrintWriter out = response.getWriter()) {

        String l = request.getParameter("nom");
        String f = request.getParameter("prenom");
        String m = request.getParameter("mail");
        String s = request.getParameter("serv");
        String u = request.getParameter("username");
        String p = request.getParameter("password");
        String p2 = request.getParameter("passwbox2");

        if (l.equals("") || f.equals("")
                || m.equals("") || u.equals("")
                || p.equals("") || p2.equals("")) {
            RequestDispatcher rd = getServletContext().getRequestDispatcher("/enreg.jsp");
            response.setContentType("text/html;charset=UTF-8");
            request.setCharacterEncoding("UTF-8");

            out.println("<script>alert('Fill all the boxes !')</script>");
            rd.include(request, response);

        }
        if (p.equals(p2)) 
        {

            Class.forName(driver).newInstance();
            conn = DriverManager.getConnection(url + dbName, userName, password);
            stm = (Statement) conn.createStatement();
            String req = "INSERT INTO user("
                    + "`id`, `username`, `password`, `FName`, `LName`, `mail`,`id_service`,`id_groupe`) "
                    + "VALUES ("
                    + "NULL,'" + u + "','" + p + "','" + f + "','" + l + "','" + m + "','" + s + "'," + "NULL)";
            stm.execute(req);
            stm.close();
            RequestDispatcher rd = getServletContext().getRequestDispatcher("/enreg.jsp");
            response.setContentType("text/html;charset=UTF-8");
            request.setCharacterEncoding("UTF-8");

            out.println("<script>alert('Good!')</script>");
            rd.include(request, response);
        } else {

            RequestDispatcher rd = getServletContext().getRequestDispatcher("/enreg.jsp");
            response.setContentType("text/html;charset=UTF-8");
            request.setCharacterEncoding("UTF-8");

            out.println("<script>alert('Password confirmation is incorrect !')</script>");
            rd.include(request, response);

        }

    } catch (ClassNotFoundException ex) {
        Logger.getLogger(RegistController.class.getName()).log(Level.SEVERE, null, ex);
    } catch (InstantiationException ex) {
        Logger.getLogger(RegistController.class.getName()).log(Level.SEVERE, null, ex);
    } catch (IllegalAccessException ex) {
        Logger.getLogger(RegistController.class.getName()).log(Level.SEVERE, null, ex);
    } catch (SQLException ex) {
        Logger.getLogger(RegistController.class.getName()).log(Level.SEVERE, null, ex);
    }
}

}

Is something wrong in the syntax ? Thank you all for your help.

Aucun commentaire:

Enregistrer un commentaire