113 lines
4.5 KiB
Java
113 lines
4.5 KiB
Java
/*
|
||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||
* Click nbfs://nbhost/SystemFileSystem/Templates/JSP_Servlet/Servlet.java to edit this template
|
||
*/
|
||
package gestionClient;
|
||
|
||
import java.io.IOException;
|
||
import java.io.PrintWriter;
|
||
import jakarta.servlet.ServletException;
|
||
import jakarta.servlet.http.HttpServlet;
|
||
import jakarta.servlet.http.HttpServletRequest;
|
||
import jakarta.servlet.http.HttpServletResponse;
|
||
import jakarta.servlet.http.HttpSession;
|
||
import java.util.ArrayList;
|
||
import testForms.AuthentifForm;
|
||
import testForms.NouveauClientForm;
|
||
|
||
/**
|
||
*
|
||
* @author famille Thevenot
|
||
*/
|
||
public class NouveauServlet extends HttpServlet {
|
||
|
||
/**
|
||
* Processes requests for both HTTP <code>GET</code> and <code>POST</code>
|
||
* methods.
|
||
*
|
||
* @param request servlet request
|
||
* @param response servlet response
|
||
* @throws ServletException if a servlet-specific error occurs
|
||
* @throws IOException if an I/O error occurs
|
||
*/
|
||
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
|
||
throws ServletException, IOException {
|
||
response.setContentType("text/html;charset=UTF-8");
|
||
try (PrintWriter out = response.getWriter()) {
|
||
/* TODO output your page here. You may use following sample code. */
|
||
out.println("<!DOCTYPE html>");
|
||
out.println("<html>");
|
||
out.println("<head>");
|
||
out.println("<title>Servlet NouveauServlet</title>");
|
||
out.println("</head>");
|
||
out.println("<body>");
|
||
out.println("<h1>Servlet NouveauServlet at " + request.getContextPath() + "</h1>");
|
||
out.println("</body>");
|
||
out.println("</html>");
|
||
}
|
||
}
|
||
|
||
// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
|
||
/**
|
||
* Handles the HTTP <code>GET</code> method.
|
||
*
|
||
* @param request servlet request
|
||
* @param response servlet response
|
||
* @throws ServletException if a servlet-specific error occurs
|
||
* @throws IOException if an I/O error occurs
|
||
*/
|
||
@Override
|
||
protected void doGet(HttpServletRequest request, HttpServletResponse response)
|
||
throws ServletException, IOException {
|
||
getServletContext().getRequestDispatcher("/WEB-INF/nouveauClientVue.jsp").forward(request, response);
|
||
}
|
||
|
||
/**
|
||
* Handles the HTTP <code>POST</code> method.
|
||
*
|
||
* @param request servlet request
|
||
* @param response servlet response
|
||
* @throws ServletException if a servlet-specific error occurs
|
||
* @throws IOException if an I/O error occurs
|
||
*/
|
||
@Override
|
||
protected void doPost(HttpServletRequest request, HttpServletResponse response)
|
||
throws ServletException, IOException {
|
||
//processRequest(request, response);
|
||
//Création de l'objet leControl de type AuthentifForm
|
||
NouveauClientForm leControle = new NouveauClientForm();
|
||
//Appel de la méthode controlerAdmin
|
||
int isNum=leControle.verifierClient(request);
|
||
//création de 2 attributs de requête (isAdmin et leControle)
|
||
request.setAttribute("controlForm", leControle);
|
||
request.setAttribute("isNumAjoute", isNum);
|
||
//gestion de la liste des clients créés
|
||
if (isNum != -1) {
|
||
// Ajout du no du client créé, dans une collection d’entiers stockée en session
|
||
// 1, Récupération de la session
|
||
HttpSession maSession = request.getSession();
|
||
// 2. Récupération de la collection des clients si elle existe, création sinon
|
||
ArrayList<Integer> lesNouveauxClients = (ArrayList<Integer>) maSession.getAttribute("lesNvxClients");
|
||
if (lesNouveauxClients == null) {
|
||
lesNouveauxClients = new ArrayList<>();
|
||
}
|
||
// 3. Ajout du no du client créé dans la collection
|
||
lesNouveauxClients.add(isNum);
|
||
// 4. Mise à jour de la session
|
||
maSession.setAttribute("lesNvxClients", lesNouveauxClients); }
|
||
//Affichage JSP, redirection couche vue
|
||
getServletContext().getRequestDispatcher("/WEB-INF/nouveauClientVue.jsp").forward(request, response);
|
||
}
|
||
|
||
/**
|
||
* Returns a short description of the servlet.
|
||
*
|
||
* @return a String containing servlet description
|
||
*/
|
||
@Override
|
||
public String getServletInfo() {
|
||
return "Short description";
|
||
}// </editor-fold>
|
||
|
||
}
|