commit 7ae77d87665708c964a53f27e9683a5a0b807fcd
Author: ines <>
Date: Thu Jan 9 21:29:22 2025 +0100
1er commit
diff --git a/build.xml b/build.xml
new file mode 100644
index 0000000..7a2bc2e
--- /dev/null
+++ b/build.xml
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+
+
+
+ Builds, tests, and runs the project appli3.
+
+
+
diff --git a/nbproject/ant-deploy.xml b/nbproject/ant-deploy.xml
new file mode 100644
index 0000000..785fa0b
--- /dev/null
+++ b/nbproject/ant-deploy.xml
@@ -0,0 +1,69 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/nbproject/build-impl.xml b/nbproject/build-impl.xml
new file mode 100644
index 0000000..89b5e6a
--- /dev/null
+++ b/nbproject/build-impl.xml
@@ -0,0 +1,1434 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Must set src.dir
+ Must set test.src.dir
+ Must set build.dir
+ Must set build.web.dir
+ Must set build.generated.dir
+ Must set dist.dir
+ Must set build.classes.dir
+ Must set dist.javadoc.dir
+ Must set build.test.classes.dir
+ Must set build.test.results.dir
+ Must set build.classes.excludes
+ Must set dist.war
+
+
+
+
+
+
+
+
+
+The Java EE server classpath is not correctly set up - server home directory is missing.
+Either open the project in the IDE and assign the server or setup the server classpath manually.
+For example like this:
+ ant -Dj2ee.server.home=<app_server_installation_directory>
+
+
+The Java EE server classpath is not correctly set up. Your active server type is ${j2ee.server.type}.
+Either open the project in the IDE and assign the server or setup the server classpath manually.
+For example like this:
+ ant -Duser.properties.file=<path_to_property_file> (where you put the property "j2ee.platform.classpath" in a .properties file)
+or ant -Dj2ee.platform.classpath=<server_classpath> (where no properties file is used)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Must set javac.includes
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ No tests executed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+The libs.CopyLibs.classpath property is not set up.
+This property must point to
+org-netbeans-modules-java-j2seproject-copylibstask.jar file which is part
+of NetBeans IDE installation and is usually located at
+<netbeans_installation>/java<version>/ant/extra folder.
+Either open the project in the IDE and make sure CopyLibs library
+exists or setup the property manually. For example like this:
+ ant -Dlibs.CopyLibs.classpath=a/path/to/org-netbeans-modules-java-j2seproject-copylibstask.jar
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Must set JVM to use for profiling in profiler.info.jvm
+ Must set profiler agent JVM arguments in profiler.info.jvmargs.agent
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Must select some files in the IDE or set javac.includes
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Must select some files in the IDE or set javac.jsp.includes
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Must select a file in the IDE or set jsp.includes
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Browser not found, cannot launch the deployed application. Try to set the BROWSER environment variable.
+
+
+ Launching ${browse.url}
+
+
+
+
+
+ Must select one file in the IDE or set run.class
+
+
+
+ Must select one file in the IDE or set run.class
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Must select one file in the IDE or set debug.class
+
+
+
+
+
+
+
+
+
+
+
+ Must select one file in the IDE or set debug.class
+
+
+
+
+ Must set fix.includes
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This target only works when run from inside the NetBeans IDE.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Must select some files in the IDE or set javac.includes
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Some tests failed; see details above.
+
+
+
+
+
+
+
+
+ Must select some files in the IDE or set test.includes
+
+
+
+ Some tests failed; see details above.
+
+
+
+ Must select some files in the IDE or set test.class
+ Must select some method in the IDE or set test.method
+
+
+
+ Some tests failed; see details above.
+
+
+
+
+ Must select one file in the IDE or set test.class
+
+
+
+ Must select one file in the IDE or set test.class
+ Must select some method in the IDE or set test.method
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/nbproject/genfiles.properties b/nbproject/genfiles.properties
new file mode 100644
index 0000000..02263d5
--- /dev/null
+++ b/nbproject/genfiles.properties
@@ -0,0 +1,8 @@
+build.xml.data.CRC32=9e76b6dd
+build.xml.script.CRC32=5c202745
+build.xml.stylesheet.CRC32=1707db4f@1.100.0.1
+# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
+# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
+nbproject/build-impl.xml.data.CRC32=9e76b6dd
+nbproject/build-impl.xml.script.CRC32=0271ca75
+nbproject/build-impl.xml.stylesheet.CRC32=334708a0@1.100.0.1
diff --git a/nbproject/project.properties b/nbproject/project.properties
new file mode 100644
index 0000000..9107674
--- /dev/null
+++ b/nbproject/project.properties
@@ -0,0 +1,88 @@
+annotation.processing.enabled=true
+annotation.processing.enabled.in.editor=true
+annotation.processing.processors.list=
+annotation.processing.run.all.processors=true
+annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
+build.classes.dir=${build.web.dir}/WEB-INF/classes
+build.classes.excludes=**/*.java,**/*.form
+build.dir=build
+build.generated.dir=${build.dir}/generated
+build.generated.sources.dir=${build.dir}/generated-sources
+build.test.classes.dir=${build.dir}/test/classes
+build.test.results.dir=${build.dir}/test/results
+build.web.dir=${build.dir}/web
+build.web.excludes=${build.classes.excludes}
+client.urlPart=
+compile.jsps=false
+conf.dir=${source.root}/conf
+debug.classpath=${build.classes.dir}:${javac.classpath}
+debug.test.classpath=\
+ ${run.test.classpath}
+display.browser=true
+# Files to be excluded from distribution war
+dist.archive.excludes=
+dist.dir=dist
+dist.ear.war=${dist.dir}/${war.ear.name}
+dist.javadoc.dir=${dist.dir}/javadoc
+dist.war=${dist.dir}/${war.name}
+excludes=
+file.reference.jakarta.servlet.jsp.jstl-2.0.0.jar=C:\\Users\\noobm\\Downloads\\drive-download-20250105T160443Z-001\\jakarta.servlet.jsp.jstl-2.0.0.jar
+file.reference.jakarta.servlet.jsp.jstl-api-2.0.0.jar=C:\\Users\\noobm\\Downloads\\drive-download-20250105T160443Z-001\\jakarta.servlet.jsp.jstl-api-2.0.0.jar
+file.reference.mysql-connector-java-8.0.23.jar=C:\\Users\\noobm\\Downloads\\drive-download-20250105T160443Z-001\\mysql-connector-java-8.0.23.jar
+includes=**
+j2ee.compile.on.save=true
+j2ee.copy.static.files.on.save=true
+j2ee.deploy.on.save=true
+j2ee.platform=10-web
+j2ee.platform.classpath=${j2ee.server.home}/bin/tomcat-juli.jar:${j2ee.server.home}/lib/annotations-api.jar:${j2ee.server.home}/lib/catalina-ant.jar:${j2ee.server.home}/lib/catalina-ha.jar:${j2ee.server.home}/lib/catalina-ssi.jar:${j2ee.server.home}/lib/catalina-storeconfig.jar:${j2ee.server.home}/lib/catalina-tribes.jar:${j2ee.server.home}/lib/catalina.jar:${j2ee.server.home}/lib/ecj-4.27.jar:${j2ee.server.home}/lib/el-api.jar:${j2ee.server.home}/lib/jakartaee-migration-1.0.8-shaded.jar:${j2ee.server.home}/lib/jasper-el.jar:${j2ee.server.home}/lib/jasper.jar:${j2ee.server.home}/lib/jaspic-api.jar:${j2ee.server.home}/lib/jsp-api.jar:${j2ee.server.home}/lib/servlet-api.jar:${j2ee.server.home}/lib/tomcat-api.jar:${j2ee.server.home}/lib/tomcat-coyote-ffm.jar:${j2ee.server.home}/lib/tomcat-coyote.jar:${j2ee.server.home}/lib/tomcat-dbcp.jar:${j2ee.server.home}/lib/tomcat-i18n-cs.jar:${j2ee.server.home}/lib/tomcat-i18n-de.jar:${j2ee.server.home}/lib/tomcat-i18n-es.jar:${j2ee.server.home}/lib/tomcat-i18n-fr.jar:${j2ee.server.home}/lib/tomcat-i18n-ja.jar:${j2ee.server.home}/lib/tomcat-i18n-ko.jar:${j2ee.server.home}/lib/tomcat-i18n-pt-BR.jar:${j2ee.server.home}/lib/tomcat-i18n-ru.jar:${j2ee.server.home}/lib/tomcat-i18n-zh-CN.jar:${j2ee.server.home}/lib/tomcat-jdbc.jar:${j2ee.server.home}/lib/tomcat-jni.jar:${j2ee.server.home}/lib/tomcat-util-scan.jar:${j2ee.server.home}/lib/tomcat-util.jar:${j2ee.server.home}/lib/tomcat-websocket.jar:${j2ee.server.home}/lib/websocket-api.jar:${j2ee.server.home}/lib/websocket-client-api.jar
+j2ee.server.type=Tomcat
+jar.compress=false
+javac.classpath=\
+ ${file.reference.jakarta.servlet.jsp.jstl-2.0.0.jar}:\
+ ${file.reference.jakarta.servlet.jsp.jstl-api-2.0.0.jar}:\
+ ${file.reference.mysql-connector-java-8.0.23.jar}
+# Space-separated list of extra javac options
+javac.compilerargs=
+javac.debug=true
+javac.deprecation=false
+javac.processorpath=\
+ ${javac.classpath}
+javac.source=17
+javac.target=17
+javac.test.classpath=\
+ ${javac.classpath}:\
+ ${build.classes.dir}
+javac.test.processorpath=\
+ ${javac.test.classpath}
+javadoc.additionalparam=
+javadoc.author=false
+javadoc.encoding=${source.encoding}
+javadoc.noindex=false
+javadoc.nonavbar=false
+javadoc.notree=false
+javadoc.preview=true
+javadoc.private=false
+javadoc.splitindex=true
+javadoc.use=true
+javadoc.version=false
+javadoc.windowtitle=
+lib.dir=${web.docbase.dir}/WEB-INF/lib
+no.dependencies=false
+persistence.xml.dir=${conf.dir}
+platform.active=default_platform
+resource.dir=setup
+run.test.classpath=\
+ ${javac.test.classpath}:\
+ ${build.test.classes.dir}
+# Space-separated list of JVM arguments used when running a class with a main method or a unit test
+# (you may also define separate properties like run-sys-prop.name=value instead of -Dname=value):
+runmain.jvmargs=
+source.encoding=UTF-8
+source.root=src
+src.dir=${source.root}/java
+test.src.dir=test
+war.content.additional=
+war.ear.name=${war.name}
+war.name=appli3.war
+web.docbase.dir=web
+webinf.dir=web/WEB-INF
diff --git a/nbproject/project.xml b/nbproject/project.xml
new file mode 100644
index 0000000..88eaf61
--- /dev/null
+++ b/nbproject/project.xml
@@ -0,0 +1,31 @@
+
+
+ org.netbeans.modules.web.project
+
+
+ appli3
+ 1.6.5
+
+
+ ${file.reference.jakarta.servlet.jsp.jstl-2.0.0.jar}
+ WEB-INF/lib
+
+
+ ${file.reference.jakarta.servlet.jsp.jstl-api-2.0.0.jar}
+ WEB-INF/lib
+
+
+ ${file.reference.mysql-connector-java-8.0.23.jar}
+ WEB-INF/lib
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/conf/MANIFEST.MF b/src/conf/MANIFEST.MF
new file mode 100644
index 0000000..58630c0
--- /dev/null
+++ b/src/conf/MANIFEST.MF
@@ -0,0 +1,2 @@
+Manifest-Version: 1.0
+
diff --git a/src/java/Servlet/AuthentificationServlet.java b/src/java/Servlet/AuthentificationServlet.java
new file mode 100644
index 0000000..5500008
--- /dev/null
+++ b/src/java/Servlet/AuthentificationServlet.java
@@ -0,0 +1,116 @@
+/*
+ * 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 Servlet;
+
+import beans.Pompier;
+import form.AuthentifForm;
+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;
+
+/**
+ *
+ * @author noobm
+ */
+public class AuthentificationServlet extends HttpServlet {
+
+ /**
+ * Processes requests for both HTTP GET
and POST
+ * 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("");
+ out.println("");
+ out.println("
");
+ out.println("Servlet authentificationServlet");
+ out.println("");
+ out.println("");
+ out.println("Servlet authentificationServlet at " + request.getContextPath() + "
");
+ out.println("");
+ out.println("");
+ }
+ }
+
+ //
+ /**
+ * Handles the HTTP GET
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 {
+ HttpSession Session = request.getSession();
+ Session.removeAttribute("lePompierConnecte");
+ Session.removeAttribute("lesPompiers");
+ Session.removeAttribute("lePompier");
+ request.getRequestDispatcher("/WEB-INF/views/AuthentificationJSP.jsp").forward(request, response);
+ }
+
+ /**
+ * Handles the HTTP POST
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 {
+ Pompier lePompier = null;
+ AuthentifForm authentif = new AuthentifForm(request);
+ if (authentif.ctrlAuthentif() && authentif.ctrlBDD()) {
+ HttpSession maSession = request.getSession();
+ lePompier = (Pompier) maSession.getAttribute("lePompierConnecte");
+
+ if (lePompier != null) {
+ if (lePompier.getStatut() == 1) {
+ getServletContext().getRequestDispatcher("/WEB-INF/views/AccueilPompierJSP.jsp").forward(request, response);
+ } else if (lePompier.getStatut() == 2) {
+
+ getServletContext().getRequestDispatcher("/WEB-INF/views/AccueilResponsableJSP.jsp").forward(request, response);
+
+ } else {
+ request.setAttribute("message", "Statut non reconnu.");
+ getServletContext().getRequestDispatcher("/WEB-INF/views/AuthentificationJSP.jsp").forward(request, response);
+ }
+ } else {
+ request.setAttribute("message", "Erreur interne : utilisateur non trouvé.");
+ getServletContext().getRequestDispatcher("/WEB-INF/views/AuthentificationJSP.jsp").forward(request, response);
+ }
+ } else {
+ getServletContext().getRequestDispatcher("/WEB-INF/views/AuthentificationJSP.jsp").forward(request, response);
+ }
+ }
+
+
+ /**
+ * Returns a short description of the servlet.
+ *
+ * @return a String containing servlet description
+ */
+ @Override
+ public String getServletInfo() {
+ return "Short description";
+ }//
+
+}
diff --git a/src/java/Servlet/EditionProfilServlet.java b/src/java/Servlet/EditionProfilServlet.java
new file mode 100644
index 0000000..d47a06c
--- /dev/null
+++ b/src/java/Servlet/EditionProfilServlet.java
@@ -0,0 +1,118 @@
+/*
+ * 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 Servlet;
+
+import beans.Pompier;
+import form.EditionForm;
+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;
+
+/**
+ *
+ * @author noobm
+ */
+public class EditionProfilServlet extends HttpServlet {
+
+ /**
+ * Processes requests for both HTTP GET
and POST
+ * 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("");
+ out.println("");
+ out.println("");
+ out.println("Servlet EditionPompierServlet");
+ out.println("");
+ out.println("");
+ out.println("Servlet EditionPompierServlet at " + request.getContextPath() + "
");
+ out.println("");
+ out.println("");
+ }
+ }
+
+ //
+ /**
+ * Handles the HTTP GET
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 {
+ Pompier lePompier = null;
+ HttpSession maSession = request.getSession();
+ lePompier = (Pompier) maSession.getAttribute("lePompierConnecte");
+
+ if (lePompier != null) {
+ request.setAttribute("pompier", lePompier);
+ request.getRequestDispatcher("/WEB-INF/views/EditionPompierJSP.jsp").forward(request, response);
+ } else {
+ response.sendRedirect("/WEB-INF/views/AuthentificationJSP.jsp");
+ }
+ }
+
+ /**
+ * Handles the HTTP POST
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 {
+ EditionForm edition = new EditionForm(request);
+ Pompier lePompier = null;
+ HttpSession maSession = request.getSession();
+ lePompier = (Pompier) maSession.getAttribute("lePompierConnecte");
+ if (edition.ctrlEdition() && lePompier != null){
+
+ lePompier.setNom(request.getParameter("nom"));
+ lePompier.setPrenom(request.getParameter("prenom"));
+ lePompier.setLogin(request.getParameter("login"));
+ lePompier.setMail(request.getParameter("mail"));
+ lePompier.setAdresse(request.getParameter("adresse"));
+ lePompier.setCp(request.getParameter("cp"));
+ lePompier.setVille(request.getParameter("ville"));
+ lePompier.setBip(request.getParameter("bip"));
+ lePompier.setGrade(Integer.parseInt(request.getParameter("grade")));
+ lePompier.setCommentaire(request.getParameter("commentaire"));
+
+
+ request.getSession().setAttribute("lePompierConnecte", lePompier);
+ response.sendRedirect("/WEB-INF/views/ProfilJSP.jsp");}
+
+ else {
+ response.sendRedirect("/WEB-INF/views/AuthentificationJSP.jsp"); // Rediriger si pas de pompier connecté
+ }
+ }
+
+ /**
+ * Returns a short description of the servlet.
+ *
+ * @return a String containing servlet description
+ */
+ @Override
+ public String getServletInfo() {
+ return "Short description";
+ }//
+
+}
diff --git a/src/java/Servlet/ProfilPompierServlet.java b/src/java/Servlet/ProfilPompierServlet.java
new file mode 100644
index 0000000..d31a7ff
--- /dev/null
+++ b/src/java/Servlet/ProfilPompierServlet.java
@@ -0,0 +1,93 @@
+/*
+ * 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 Servlet;
+
+import beans.Pompier;
+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;
+
+/**
+ *
+ * @author noobm
+ */
+public class ProfilPompierServlet extends HttpServlet {
+
+ /**
+ * Processes requests for both HTTP GET
and POST
+ * 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("");
+ out.println("");
+ out.println("");
+ out.println("Servlet AccueilPompierServlet");
+ out.println("");
+ out.println("");
+ out.println("Servlet AccueilPompierServlet at " + request.getContextPath() + "
");
+ out.println("");
+ out.println("");
+ }
+ }
+
+ //
+ /**
+ * Handles the HTTP GET
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 {
+ HttpSession maSession = request.getSession();
+ Pompier lePompier = (Pompier) maSession.getAttribute("lePompierConnecte");
+
+ if (lePompier != null) {
+ request.setAttribute("pompier", lePompier);
+ request.getRequestDispatcher("/WEB-INF/views/ProfilJSP.jsp").forward(request, response);
+ } else {
+ // Rediriger vers la page de connexion si aucun pompier n'est connecté
+ response.sendRedirect("login");
+ }
+ }
+ /**
+ * Handles the HTTP POST
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);
+ }
+ /**
+ * Returns a short description of the servlet.
+ *
+ * @return a String containing servlet description
+ */
+ @Override
+ public String getServletInfo() {
+ return "Short description";
+ }//
+
+}
diff --git a/src/java/bdd/CaserneMySQL.java b/src/java/bdd/CaserneMySQL.java
new file mode 100644
index 0000000..2b823a9
--- /dev/null
+++ b/src/java/bdd/CaserneMySQL.java
@@ -0,0 +1,37 @@
+/*
+ * bddd/CaserneMySQL.java
+ */
+package bdd;
+
+import beans.Caserne;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+
+public class CaserneMySQL {
+ private final Connection laConnection = Connexion.getConnect("172.20.10.5",
+ "sdis29",
+ "adminBDsdis",
+ "mdpBDsdis");
+ public Caserne read(int id) {
+ Caserne laCaserne = null;
+ try {
+ PreparedStatement prepStmt = null;
+ String sql = "SELECT * FROM caserne WHERE id=?";
+ prepStmt = laConnection.prepareStatement(sql);
+ prepStmt.setInt(1, id);
+ ResultSet result = prepStmt.executeQuery();
+ if (result.next()) {
+ laCaserne = new Caserne(result.getInt(1), result.getString(2),result.getString(3),
+ result.getString(4), result.getString(5),result.getString(6));
+ }
+ prepStmt.close();
+ } catch (SQLException ex) {
+ System.out.println("SQLExeption : " + ex.getMessage());
+ System.out.println("SQLState : " + ex.getSQLState());
+ System.out.println("Code erreur : " + ex.getErrorCode());
+ }
+ return laCaserne;
+ }
+}
diff --git a/src/java/bdd/Connexion.java b/src/java/bdd/Connexion.java
new file mode 100644
index 0000000..3c45d8c
--- /dev/null
+++ b/src/java/bdd/Connexion.java
@@ -0,0 +1,61 @@
+package bdd;
+/*
+Connexion.java
+Classe permettant d'établir une connexion avec une base de données mySQL
+*/
+import java.sql.Connection;
+import java.sql.DriverManager;
+
+public class Connexion {
+ private static Connection connect; // Variable de connexion
+
+ /**
+ * Constructeur
+ * @param serveur nom du serveur, localhost si local
+ * @param bdd nom de la base de données
+ * @param nomUtil nom utilisateur
+ * @param mdp mot de passe lié à l'utilisateur
+ */
+ private Connexion(String serveur, String bdd, String nomUtil, String mdp) {
+ try {
+ // 1. Chargement du driver
+ //Class.forName("com.mysql.jdbc.Driver");
+ Class.forName("com.mysql.cj.jdbc.Driver");
+ System.out.println("Driver accessible");
+
+ // 2. Initialisation des paramètres de connexion
+ String host = serveur; // Serveur de bd
+ String dbname = bdd; // Nom bd
+ String url = "jdbc:mysql://" + host + "/" + dbname; // url de connexion
+ url += "?autoReconnect=true"; // Ajout 26/09/2021
+ System.out.println("url : "+url);
+ String user = nomUtil; // nom du user
+ System.out.println("nomUtil : "+nomUtil);
+ String passwd = mdp; // mot de passe
+ System.out.println("mdp : "+mdp);
+
+ // 3. Connexion
+ connect = (Connection) DriverManager.getConnection(url, user, passwd);
+ System.out.println("Connexion réussie !");
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * Retourne la connection établie (Création d'une connection si elle n'existe pas)
+ * @param serveur nom du serveur, localhost si local
+ * @param bdd nom de la base de données
+ * @param nomUtil nom utilisateur
+ * @param mdp mot de passe lié à l'utilisateur
+ * @return connection établie
+ */
+ public static Connection getConnect(String serveur, String bdd, String nomUtil, String mdp) {
+ //System.out.println("getConnect");
+ if (connect == null) {
+ new Connexion(serveur, bdd, nomUtil, mdp);
+ }
+ return connect;
+ }
+}
diff --git a/src/java/bdd/GradeMySQL.java b/src/java/bdd/GradeMySQL.java
new file mode 100644
index 0000000..a7e6173
--- /dev/null
+++ b/src/java/bdd/GradeMySQL.java
@@ -0,0 +1,62 @@
+package bdd;
+
+import beans.Grade;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+
+/**
+ *
+ * @author noobm
+ */
+public class GradeMySQL {
+ private final Connection laConnection = Connexion.getConnect("172.20.10.5",
+ "sdis29",
+ "adminBDsdis",
+ "mdpBDsdis");
+
+ public Grade read(int id) {
+ Grade leGrade = null;
+ try {
+ PreparedStatement prepStmt = null;
+ String sql = "SELECT * FROM grade WHERE idGrade=?";
+ prepStmt = laConnection.prepareStatement(sql);
+ prepStmt.setInt(1, id);
+ ResultSet result = prepStmt.executeQuery();
+ if (result.next()) {
+ leGrade = new Grade(result.getInt(1), result.getString(2));
+ }
+ prepStmt.close();
+ } catch (SQLException ex) {
+ System.out.println("SQLExeption : " + ex.getMessage());
+ System.out.println("SQLState : " + ex.getSQLState());
+ System.out.println("Code erreur : " + ex.getErrorCode());
+ }
+ return leGrade;
+ }
+
+ // Lecture de tous les grades dans la base de données
+ public ArrayList readGrades() {
+ ArrayList lesGrades = new ArrayList<>();
+ try {
+ PreparedStatement prepStmt = null;
+ String sql = "SELECT * FROM grade";
+ prepStmt = laConnection.prepareStatement(sql);
+ ResultSet result = prepStmt.executeQuery();
+
+
+ while (result.next()) {
+ Grade grade = new Grade(result.getInt(1), result.getString(2));
+ lesGrades.add(grade);
+ }
+ prepStmt.close();
+ } catch (SQLException ex) {
+ System.out.println("SQLExeption : " + ex.getMessage());
+ System.out.println("SQLState : " + ex.getSQLState());
+ System.out.println("Code erreur : " + ex.getErrorCode());
+ }
+ return lesGrades;
+ }
+}
diff --git a/src/java/bdd/PompierMySQL.java b/src/java/bdd/PompierMySQL.java
new file mode 100644
index 0000000..6ceb9a3
--- /dev/null
+++ b/src/java/bdd/PompierMySQL.java
@@ -0,0 +1,217 @@
+/*
+ * bdd/PompierMysql.java
+ */
+package bdd;
+
+import beans.Caserne;
+import beans.Pompier;
+import beans.Statut;
+import beans.TypePers;
+import beans.Grade;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.sql.Timestamp;
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.HashMap;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+public class PompierMySQL {
+
+ private final Connection theConnection = Connexion.getConnect("172.20.10.5",
+ "sdis29",
+ "adminBDsdis",
+ "mdpBDsdis");
+ // Tableau des attributs mis à jour
+ // 1ère dimension : noms des attributs en bdd
+ // 2ème dimension : noms des champs transmis
+ // 3ème dimension : type de données, i pour Integet, s pour String
+ private String[][] lesAttributs = {
+ {"id", "idCaserne", "nom", "prenom", "statut", "typePers", "mail", "login", "mdp", "adresse", "cp", "ville", "bip", "grade", "commentaire"},
+ {"idPompier", "idCaserne", "nom", "prenom", "statut", "type", "mail", "login", "mdp", "adresse", "cp", "ville", "bip", "grade", "obs"},
+ {"i", "i", "s", "s", "i", "i", "s", "s", "s", "s", "s", "s", "s", "i", "s"}
+ };
+
+ /**
+ * Recherche du pompier ayant le login et le mdp passé en paramètres
+ *
+ * @param login
+ * @param mdp
+ * @return Pompier correspondant ou null si non trouvé
+ */
+ public Pompier readAuthentif(String login, String mdp) {
+ Pompier lePompier = null;
+ try {
+ PreparedStatement prepStmt;
+ String sql = "SELECT * FROM pompier WHERE login=? AND mdp=? ";
+
+ prepStmt = theConnection.prepareStatement(sql);
+ prepStmt.setString(1, login);
+ prepStmt.setString(2, mdp);
+ ResultSet result = prepStmt.executeQuery();
+ if (result.next()) {
+ CaserneMySQL laCaserneMySQL = new CaserneMySQL();
+ Caserne laCaserne = laCaserneMySQL.read(result.getInt(2));
+ lePompier = constituerLePompier(result, laCaserne);
+ }
+ prepStmt.close();
+ } catch (SQLException ex) {
+ System.out.println("SQLExeption : " + ex.getMessage());
+ System.out.println("SQLState : " + ex.getSQLState());
+ System.out.println("Code erreur : " + ex.getErrorCode());
+ }
+ return lePompier;
+ }
+
+ /**
+ * Recherche les pompiers volontaires de la caserne
+ *
+ * @param idCaserne
+ * @return collection des pompiers concernés
+ */
+ public ArrayList readLesPompiersCaserne(int idCaserne) {
+ ArrayList lesPompiers = new ArrayList();
+ try {
+ PreparedStatement prepStmt;
+ String sql = "SELECT * FROM pompier WHERE idCaserne=? AND statut=1 AND typePers=2 ORDER BY nom, prenom";
+
+ prepStmt = theConnection.prepareStatement(sql);
+ prepStmt.setInt(1, idCaserne);
+ ResultSet result = prepStmt.executeQuery();
+ CaserneMySQL laCaserneMySQL = new CaserneMySQL();
+ Caserne laCaserne = laCaserneMySQL.read(idCaserne);
+ while (result.next()) {
+ Pompier unPompier = constituerLePompier(result, laCaserne);
+ lesPompiers.add(unPompier);
+ }
+ prepStmt.close();
+ } catch (SQLException ex) {
+ System.out.println("SQLExeption : " + ex.getMessage());
+ System.out.println("SQLState : " + ex.getSQLState());
+ System.out.println("Code erreur : " + ex.getErrorCode());
+ }
+ return lesPompiers;
+ }
+
+ public Pompier constituerLePompier(ResultSet result, Caserne laCaserne) {
+ Pompier lePompier = null;
+ StatutMySQL leStatutMySQL = new StatutMySQL();
+ GradeMySQL leGradeMySQL = new GradeMySQL();
+ TypePersoMySQL leTypePersoMySQL = new TypePersoMySQL();
+ try {
+
+ Statut leStatut = leStatutMySQL.read(result.getInt("statut"));
+ TypePers leTypePers = leTypePersoMySQL.read(result.getInt("typePers"));
+ Grade leGrade = leGradeMySQL.read(result.getInt("grade"));
+
+ lePompier = new Pompier(
+ result.getInt(1),
+ laCaserne.getId(),
+ result.getString(3),
+ result.getString(4),
+ leStatut.getIdStatut(),
+ leTypePers.getIdTypePers(),
+ result.getString(7),
+ result.getString(8),
+ result.getString(9),
+ result.getString(10),
+ result.getString(11),
+ result.getString(12),
+ result.getString(13),
+ leGrade.getIdGrade(),
+ result.getString(16));
+ //System.out.println("lePompier " + lePompier);
+ } catch (SQLException ex) {
+ Logger.getLogger(PompierMySQL.class.getName()).log(Level.SEVERE, null, ex);
+ }
+ return lePompier;
+ }
+
+ public Pompier create(HashMap lesParametres) {
+ Pompier lePompierCree = null;
+
+ String valeurs [] = new String[lesAttributs[1].length];
+ String sql = "INSERT INTO pompier (";
+ int nbAttributsMaj = 0;
+ String virgule = "";
+ for (HashMap.Entry unParam : lesParametres.entrySet()) {
+
+ int i = 0;
+ while (i < lesAttributs[1].length && !(lesAttributs[1][i].equals(unParam.getKey()))) {
+ i++;
+ }
+ if (i < lesAttributs[0].length) {
+ sql += virgule + lesAttributs[0][i];
+ valeurs[nbAttributsMaj] = "("+lesAttributs[2][i]+")" + unParam.getValue();
+ nbAttributsMaj++;
+ virgule = ", ";
+ }
+ }
+ sql += ", dateEnreg) values (?";
+ for (int i=0; i 0) {
+ ResultSet result = prepStmt.getGeneratedKeys();
+ if (result.first()) {
+ int id = result.getInt(1);
+ lePompierCree = read(id);
+ System.out.println("lePompierCree : "+ lePompierCree);
+ }
+ }
+ prepStmt.close();
+ } catch (SQLException ex) {
+ System.out.println("SQLExeption : " + ex.getMessage());
+ System.out.println("SQLState : " + ex.getSQLState());
+ System.out.println("Code erreur : " + ex.getErrorCode());
+ }
+
+ return lePompierCree;
+ }
+
+ public Pompier read(int idP) {
+ Pompier unPompier = null;
+ try {
+ PreparedStatement prepStmt;
+ String sql = "SELECT * FROM pompier WHERE idPompier=? ";
+
+ prepStmt = theConnection.prepareStatement(sql);
+ prepStmt.setInt(1, idP);
+ ResultSet result = prepStmt.executeQuery();
+ if (result.next()) {
+ CaserneMySQL laCaserneMySQL = new CaserneMySQL();
+ Caserne laCaserne = laCaserneMySQL.read(result.getInt(2));
+ unPompier = constituerLePompier(result, laCaserne);
+ }
+ prepStmt.close();
+ } catch (SQLException ex) {
+ System.out.println("SQLExeption : " + ex.getMessage());
+ System.out.println("SQLState : " + ex.getSQLState());
+ System.out.println("Code erreur : " + ex.getErrorCode());
+ }
+ return unPompier;
+ }
+}
diff --git a/src/java/bdd/StatutMySQL.java b/src/java/bdd/StatutMySQL.java
new file mode 100644
index 0000000..1ee049c
--- /dev/null
+++ b/src/java/bdd/StatutMySQL.java
@@ -0,0 +1,59 @@
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+package bdd;
+import beans.Statut;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+
+public class StatutMySQL {
+ private final Connection laConnection = Connexion.getConnect("172.20.10.5",
+ "sdis29",
+ "adminBDsdis",
+ "mdpBDsdis");
+ public Statut read(int id) {
+ Statut leStatut = null;
+ try {
+ PreparedStatement prepStmt = null;
+ String sql = "SELECT * FROM statut WHERE idStatut=?";
+ prepStmt = laConnection.prepareStatement(sql);
+ prepStmt.setInt(1, id);
+ ResultSet result = prepStmt.executeQuery();
+ if (result.next()) {
+ leStatut = new Statut(result.getInt(1), result.getString(2));
+ }
+ prepStmt.close();
+ } catch (SQLException ex) {
+ System.out.println("SQLExeption : " + ex.getMessage());
+ System.out.println("SQLState : " + ex.getSQLState());
+ System.out.println("Code erreur : " + ex.getErrorCode());
+ }
+ return leStatut;
+ }
+ // Lecture de tous les grades dans la base de données
+ public ArrayList readStatuts() {
+ ArrayList lesStatuts = new ArrayList<>();
+ try {
+ PreparedStatement prepStmt = null;
+ String sql = "SELECT * FROM statut";
+ prepStmt = laConnection.prepareStatement(sql);
+ ResultSet result = prepStmt.executeQuery();
+
+
+ while (result.next()) {
+ Statut leStatut = new Statut(result.getInt(1), result.getString(2));
+ lesStatuts.add(leStatut);
+ }
+ prepStmt.close();
+ } catch (SQLException ex) {
+ System.out.println("SQLExeption : " + ex.getMessage());
+ System.out.println("SQLState : " + ex.getSQLState());
+ System.out.println("Code erreur : " + ex.getErrorCode());
+ }
+ return lesStatuts;
+ }
+}
diff --git a/src/java/bdd/TrancheMySQL.java b/src/java/bdd/TrancheMySQL.java
new file mode 100644
index 0000000..a5e1de9
--- /dev/null
+++ b/src/java/bdd/TrancheMySQL.java
@@ -0,0 +1,65 @@
+package bdd;
+
+import beans.Tranche;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+
+/**
+ *
+ * @author noobm
+ */
+public class TrancheMySQL {
+ private final Connection laConnection = Connexion.getConnect("172.20.10.5",
+ "sdis29",
+ "adminBDsdis",
+ "mdpBDsdis");
+ public Tranche read(int id) {
+ Tranche laTranche = null;
+ try {
+ PreparedStatement prepStmt = null;
+ String sql = "SELECT * FROM tranche WHERE idTranche=?";
+ prepStmt = laConnection.prepareStatement(sql);
+ prepStmt.setInt(1, id);
+ ResultSet result = prepStmt.executeQuery();
+ if (result.next()) {
+ laTranche = new Tranche(result.getInt(1), result.getString(2));
+ }
+ prepStmt.close();
+ } catch (SQLException ex) {
+ System.out.println("SQLExeption : " + ex.getMessage());
+ System.out.println("SQLState : " + ex.getSQLState());
+ System.out.println("Code erreur : " + ex.getErrorCode());
+ }
+ return laTranche;
+ }
+ // Lecture de tous les grades dans la base de données
+ public ArrayList readTranches() {
+ ArrayList lesTranches = new ArrayList<>();
+ try {
+ PreparedStatement prepStmt = null;
+ String sql = "SELECT * FROM tranche";
+ prepStmt = laConnection.prepareStatement(sql);
+ ResultSet result = prepStmt.executeQuery();
+
+
+ while (result.next()) {
+ Tranche laTranche = new Tranche(result.getInt(1), result.getString(2));
+ lesTranches.add(laTranche);
+ }
+ prepStmt.close();
+ } catch (SQLException ex) {
+ System.out.println("SQLExeption : " + ex.getMessage());
+ System.out.println("SQLState : " + ex.getSQLState());
+ System.out.println("Code erreur : " + ex.getErrorCode());
+ }
+ return lesTranches;
+ }
+}
diff --git a/src/java/bdd/TypePersoMySQL.java b/src/java/bdd/TypePersoMySQL.java
new file mode 100644
index 0000000..4306806
--- /dev/null
+++ b/src/java/bdd/TypePersoMySQL.java
@@ -0,0 +1,65 @@
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+package bdd;
+import beans.TypePers;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+
+
+
+public class TypePersoMySQL {
+ private final Connection laConnection = Connexion.getConnect("172.20.10.5",
+ "sdis29",
+ "adminBDsdis",
+ "mdpBDsdis");
+ public TypePers read(int id) {
+ TypePers leTypePerso = null;
+ try {
+ PreparedStatement prepStmt = null;
+ String sql = "SELECT * FROM typePers WHERE idTypePers=?";
+ prepStmt = laConnection.prepareStatement(sql);
+ prepStmt.setInt(1, id);
+ ResultSet result = prepStmt.executeQuery();
+ if (result.next()) {
+ leTypePerso = new TypePers(result.getInt(1), result.getString(2));
+ }
+ prepStmt.close();
+ } catch (SQLException ex) {
+ System.out.println("SQLExeption : " + ex.getMessage());
+ System.out.println("SQLState : " + ex.getSQLState());
+ System.out.println("Code erreur : " + ex.getErrorCode());
+ }
+ return leTypePerso;
+ }
+ // Lecture de tous les grades dans la base de données
+ public ArrayList readStatuts() {
+ ArrayList lesTypePers = new ArrayList<>();
+ try {
+ PreparedStatement prepStmt = null;
+ String sql = "SELECT * FROM typePers";
+ prepStmt = laConnection.prepareStatement(sql);
+ ResultSet result = prepStmt.executeQuery();
+
+
+ while (result.next()) {
+ TypePers leTypePers = new TypePers(result.getInt(1), result.getString(2));
+ lesTypePers.add(leTypePers);
+ }
+ prepStmt.close();
+ } catch (SQLException ex) {
+ System.out.println("SQLExeption : " + ex.getMessage());
+ System.out.println("SQLState : " + ex.getSQLState());
+ System.out.println("Code erreur : " + ex.getErrorCode());
+ }
+ return lesTypePers;
+ }
+}
diff --git a/src/java/beans/Caserne.java b/src/java/beans/Caserne.java
new file mode 100644
index 0000000..83ffbad
--- /dev/null
+++ b/src/java/beans/Caserne.java
@@ -0,0 +1,84 @@
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+package beans;
+
+public class Caserne {
+ private int id;
+ private String nom;
+ private String adresse;
+ private String tel;
+ private String groupement;
+ private String codePostal;
+
+ public Caserne(int id, String nom, String adresse, String tel, String groupement, String codePostal) {
+ this.id = id;
+ this.nom = nom;
+ this.adresse = adresse;
+ this.tel = tel;
+ this.groupement = groupement;
+ this.codePostal = codePostal;
+ }
+
+ public int getId() {
+ return id;
+ }
+
+ public void setId(int id) {
+ this.id = id;
+ }
+
+ public String getNom() {
+ return nom;
+ }
+
+ public void setNom(String nom) {
+ this.nom = nom;
+ }
+
+ public String getAdresse() {
+ return adresse;
+ }
+
+ public void setAdresse(String adresse) {
+ this.adresse = adresse;
+ }
+
+ public String getTel() {
+ return tel;
+ }
+
+ public void setTel(String tel) {
+ this.tel = tel;
+ }
+
+ public String getGroupement() {
+ return groupement;
+ }
+
+ public void setGroupement(String groupement) {
+ this.groupement = groupement;
+ }
+
+ public String getCodePostal() {
+ return codePostal;
+ }
+
+ public void setCodePostal(String codePostal) {
+ this.codePostal = codePostal;
+ }
+
+ @Override
+ public String toString() {
+ return "Caserne{" +
+ "id=" + id +
+ ", nom='" + nom + '\'' +
+ ", adresse='" + adresse + '\'' +
+ ", tel='" + tel + '\'' +
+ ", groupement='" + groupement + '\'' +
+ ", codePostal='" + codePostal + '\'' +
+ '}';
+ }
+}
+
diff --git a/src/java/beans/Disponibilite.java b/src/java/beans/Disponibilite.java
new file mode 100644
index 0000000..0ca78d7
--- /dev/null
+++ b/src/java/beans/Disponibilite.java
@@ -0,0 +1,41 @@
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+package beans;
+
+public class Disponibilite {
+ private int idDispo;
+ private String libelle;
+
+ public Disponibilite() {}
+
+ public Disponibilite(int idDispo, String libelle) {
+ this.idDispo = idDispo;
+ this.libelle = libelle;
+ }
+
+ public int getIdDispo() {
+ return idDispo;
+ }
+
+ public void setIdDispo(int idDispo) {
+ this.idDispo = idDispo;
+ }
+
+ public String getLibelle() {
+ return libelle;
+ }
+
+ public void setLibelle(String libelle) {
+ this.libelle = libelle;
+ }
+
+ @Override
+ public String toString() {
+ return "Disponibilite{" +
+ "idDispo=" + idDispo +
+ ", libelle='" + libelle + '\'' +
+ '}';
+ }
+}
diff --git a/src/java/beans/Grade.java b/src/java/beans/Grade.java
new file mode 100644
index 0000000..2273f32
--- /dev/null
+++ b/src/java/beans/Grade.java
@@ -0,0 +1,41 @@
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+package beans;
+
+public class Grade {
+ private int idGrade;
+ private String libelle;
+
+ public Grade() {}
+
+ public Grade(int idGrade, String libelle) {
+ this.idGrade = idGrade;
+ this.libelle = libelle;
+ }
+
+ public int getIdGrade() {
+ return idGrade;
+ }
+
+ public void setIdGrade(int idGrade) {
+ this.idGrade = idGrade;
+ }
+
+ public String getLibelle() {
+ return libelle;
+ }
+
+ public void setLibelle(String libelle) {
+ this.libelle = libelle;
+ }
+
+ @Override
+ public String toString() {
+ return "Grade{" +
+ "idGrade=" + idGrade +
+ ", libelle='" + libelle + '\'' +
+ '}';
+ }
+}
diff --git a/src/java/beans/Pompier.java b/src/java/beans/Pompier.java
new file mode 100644
index 0000000..7372ee6
--- /dev/null
+++ b/src/java/beans/Pompier.java
@@ -0,0 +1,202 @@
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+package beans;
+
+public class Pompier {
+ private int idPompier;
+ private int idCaserne;
+ private String nom;
+ private String prenom;
+ private int statut;
+ private int typePers;
+ private String mail;
+ private String login;
+ private String mdp;
+ private String adresse;
+ private String cp;
+ private String ville;
+ private String bip;
+ private int grade;
+ private String commentaire;
+
+
+
+ public Pompier(
+ int idPompier,
+ int idCaserne,
+ String nom,
+ String prenom,
+ int statut,
+ int typePers,
+ String mail,
+ String login,
+ String mdp,
+ String adresse,
+ String cp,
+ String ville,
+ String bip,
+ int grade,
+ String commentaire) {
+ this.idPompier = idPompier;
+ this.idCaserne = idCaserne;
+ this.nom = nom;
+ this.prenom = prenom;
+ this.statut = statut;
+ this.typePers = typePers;
+ this.mail = mail;
+ this.login = login;
+ this.mdp = mdp;
+ this.adresse = adresse;
+ this.cp = cp;
+ this.ville = ville;
+ this.bip = bip;
+ this.grade = grade;
+ this.commentaire = commentaire;
+ }
+
+ public int getIdPompier() {
+ return idPompier;
+ }
+
+ public void setIdPompier(int idPompier) {
+ this.idPompier = idPompier;
+ }
+
+ public int getIdCaserne() {
+ return idCaserne;
+ }
+
+ public void setIdCaserne(int idCaserne) {
+ this.idCaserne = idCaserne;
+ }
+
+ public String getNom() {
+ return nom;
+ }
+
+ public void setNom(String nom) {
+ this.nom = nom;
+ }
+
+ public String getPrenom() {
+ return prenom;
+ }
+
+ public void setPrenom(String prenom) {
+ this.prenom = prenom;
+ }
+
+ public int getStatut() {
+ return statut;
+ }
+
+ public void setStatut(int statut) {
+ this.statut = statut;
+ }
+
+ public int getTypePers() {
+ return typePers;
+ }
+
+ public void setTypePers(int typePers) {
+ this.typePers = typePers;
+ }
+
+ public String getMail() {
+ return mail;
+ }
+
+ public void setMail(String mail) {
+ this.mail = mail;
+ }
+
+ public String getLogin() {
+ return login;
+ }
+
+ public void setLogin(String login) {
+ this.login = login;
+ }
+
+ public String getMdp() {
+ return mdp;
+ }
+
+ public void setMdp(String mdp) {
+ this.mdp = mdp;
+ }
+
+ public String getAdresse() {
+ return adresse;
+ }
+
+ public void setAdresse(String adresse) {
+ this.adresse = adresse;
+ }
+
+ public String getCp() {
+ return cp;
+ }
+
+ public void setCp(String cp) {
+ this.cp = cp;
+ }
+
+ public String getVille() {
+ return ville;
+ }
+
+ public void setVille(String ville) {
+ this.ville = ville;
+ }
+
+ public String getBip() {
+ return bip;
+ }
+
+ public void setBip(String bip) {
+ this.bip = bip;
+ }
+
+ public int getGrade() {
+ return grade;
+ }
+
+ public void setGrade(int grade) {
+ this.grade = grade;
+ }
+
+ public String getCommentaire() {
+ return commentaire;
+ }
+
+ public void setCommentaire(String commentaire) {
+ this.commentaire = commentaire;
+ }
+
+
+ @Override
+ public String toString() {
+ return "Pompier{" +
+ "idPompier=" + idPompier +
+ ", idCaserne=" + idCaserne +
+ ", nom='" + nom + '\'' +
+ ", prenom='" + prenom + '\'' +
+ ", statut=" + statut +
+ ", typePers=" + typePers +
+ ", mail='" + mail + '\'' +
+ ", login='" + login + '\'' +
+ ", mdp='" + mdp + '\'' +
+ ", adresse='" + adresse + '\'' +
+ ", cp='" + cp + '\'' +
+ ", ville='" + ville + '\'' +
+ ", bip='" + bip + '\'' +
+ ", grade=" + grade +
+ ", commentaire='" + commentaire + '\'' +
+
+ '}';
+ }
+}
+
diff --git a/src/java/beans/PompierDispo.java b/src/java/beans/PompierDispo.java
new file mode 100644
index 0000000..9fff260
--- /dev/null
+++ b/src/java/beans/PompierDispo.java
@@ -0,0 +1,63 @@
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+package beans;
+
+public class PompierDispo {
+ private int idJour;
+ private int idPompier;
+ private int idTranche;
+ private Integer idDisponibilite;
+
+ public PompierDispo() {}
+
+ public PompierDispo(int idJour, int idPompier, int idTranche, Integer idDisponibilite) {
+ this.idJour = idJour;
+ this.idPompier = idPompier;
+ this.idTranche = idTranche;
+ this.idDisponibilite = idDisponibilite;
+ }
+
+ public int getIdJour() {
+ return idJour;
+ }
+
+ public void setIdJour(int idJour) {
+ this.idJour = idJour;
+ }
+
+ public int getIdPompier() {
+ return idPompier;
+ }
+
+ public void setIdPompier(int idPompier) {
+ this.idPompier = idPompier;
+ }
+
+ public int getIdTranche() {
+ return idTranche;
+ }
+
+ public void setIdTranche(int idTranche) {
+ this.idTranche = idTranche;
+ }
+
+ public Integer getIdDisponibilite() {
+ return idDisponibilite;
+ }
+
+ public void setIdDisponibilite(Integer idDisponibilite) {
+ this.idDisponibilite = idDisponibilite;
+ }
+
+ @Override
+ public String toString() {
+ return "PompierDispo{" +
+ "idJour=" + idJour +
+ ", idPompier=" + idPompier +
+ ", idTranche=" + idTranche +
+ ", idDisponibilite=" + idDisponibilite +
+ '}';
+ }
+}
diff --git a/src/java/beans/Statut.java b/src/java/beans/Statut.java
new file mode 100644
index 0000000..b238b2f
--- /dev/null
+++ b/src/java/beans/Statut.java
@@ -0,0 +1,41 @@
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+package beans;
+
+public class Statut {
+ private int idStatut;
+ private String libelle;
+
+ public Statut() {}
+
+ public Statut(int idStatut, String libelle) {
+ this.idStatut = idStatut;
+ this.libelle = libelle;
+ }
+
+ public int getIdStatut() {
+ return idStatut;
+ }
+
+ public void setIdStatut(int idStatut) {
+ this.idStatut = idStatut;
+ }
+
+ public String getLibelle() {
+ return libelle;
+ }
+
+ public void setLibelle(String libelle) {
+ this.libelle = libelle;
+ }
+
+ @Override
+ public String toString() {
+ return "Statut{" +
+ "idStatut=" + idStatut +
+ ", libelle='" + libelle + '\'' +
+ '}';
+ }
+}
diff --git a/src/java/beans/Tranche.java b/src/java/beans/Tranche.java
new file mode 100644
index 0000000..d760657
--- /dev/null
+++ b/src/java/beans/Tranche.java
@@ -0,0 +1,42 @@
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+package beans;
+
+public class Tranche {
+ private int idTranche;
+ private String libelle;
+
+ public Tranche() {}
+
+ public Tranche(int idTranche, String libelle) {
+ this.idTranche = idTranche;
+ this.libelle = libelle;
+ }
+
+ public int getIdTranche() {
+ return idTranche;
+ }
+
+ public void setIdTranche(int idTranche) {
+ this.idTranche = idTranche;
+ }
+
+ public String getLibelle() {
+ return libelle;
+ }
+
+ public void setLibelle(String libelle) {
+ this.libelle = libelle;
+ }
+
+ @Override
+ public String toString() {
+ return "Tranche{" +
+ "idTranche=" + idTranche +
+ ", libelle='" + libelle + '\'' +
+ '}';
+ }
+}
+
diff --git a/src/java/beans/TypePers.java b/src/java/beans/TypePers.java
new file mode 100644
index 0000000..f9730fb
--- /dev/null
+++ b/src/java/beans/TypePers.java
@@ -0,0 +1,41 @@
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+package beans;
+
+public class TypePers {
+ private int idTypePers;
+ private String libelle;
+
+ public TypePers() {}
+
+ public TypePers(int idTypePers, String libelle) {
+ this.idTypePers = idTypePers;
+ this.libelle = libelle;
+ }
+
+ public int getIdTypePers() {
+ return idTypePers;
+ }
+
+ public void setIdTypePers(int idTypePers) {
+ this.idTypePers = idTypePers;
+ }
+
+ public String getLibelle() {
+ return libelle;
+ }
+
+ public void setLibelle(String libelle) {
+ this.libelle = libelle;
+ }
+
+ @Override
+ public String toString() {
+ return "TypePers{" +
+ "idTypePers=" + idTypePers +
+ ", libelle='" + libelle + '\'' +
+ '}';
+ }
+}
diff --git a/src/java/form/AuthentifForm.java b/src/java/form/AuthentifForm.java
new file mode 100644
index 0000000..37ffe32
--- /dev/null
+++ b/src/java/form/AuthentifForm.java
@@ -0,0 +1,86 @@
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+package form;
+
+import bdd.GradeMySQL;
+import bdd.PompierMySQL;
+import bdd.StatutMySQL;
+import bdd.TypePersoMySQL;
+import bdd.TrancheMySQL;
+import beans.Pompier;
+import beans.Statut;
+import beans.TypePers;
+import beans.Grade;
+import beans.Tranche;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpSession;
+import java.util.ArrayList;
+import util.CtrlSaisie;
+import util.MD5;
+public class AuthentifForm {
+
+ String message;
+ HttpServletRequest request;
+
+ public AuthentifForm(HttpServletRequest request) {
+ this.request = request;
+ }
+
+ public boolean ctrlAuthentif() {
+ request.removeAttribute("message");
+ String[] champsObligatoires = {"username", "password"};
+ if (!CtrlSaisie.CtrlChampsObligatoires(request, champsObligatoires)) {
+ return false;
+ }
+
+ // Vérification absence de chevron
+ if (!CtrlSaisie.CtrlChevron(request)) {
+ return false;
+ }
+ return true;
+ }
+
+ public boolean ctrlBDD() {
+ boolean trouve = false;
+ String login = request.getParameter("username");
+ String mdp = MD5.encode(request.getParameter("password"));
+ PompierMySQL pompierMySQL = new PompierMySQL();
+ Pompier lePompier = pompierMySQL.readAuthentif(login, mdp);
+ if (lePompier!= null) {
+ trouve = true;
+ HttpSession maSession = request.getSession();
+ maSession.setAttribute("lePompierConnecte", lePompier);
+ StatutMySQL leStatutMySQL = new StatutMySQL();
+ GradeMySQL leGradeMySQL = new GradeMySQL();
+ TrancheMySQL lesTranchesMySQL = new TrancheMySQL();
+ TypePersoMySQL leTypePersoMySQL = new TypePersoMySQL();
+
+ ArrayList lesGrades = leGradeMySQL.readGrades();
+ maSession.setAttribute("les grades", lesGrades);
+
+
+ ArrayList lesTranches = lesTranchesMySQL.readTranches();
+ maSession.setAttribute("les tranches", lesTranches);
+
+
+ ArrayList lesStatuts = leStatutMySQL.readStatuts();
+ maSession.setAttribute("les statuts", lesStatuts);
+
+
+ ArrayList lesTypes = leTypePersoMySQL.readStatuts();
+ maSession.setAttribute("lesTypes", lesTypes);
+
+ if (lePompier.getStatut()== 2) {
+
+ ArrayList lesPompiers = pompierMySQL.readLesPompiersCaserne(lePompier.getIdCaserne());
+ maSession.setAttribute("lesPompiers", lesPompiers);
+ }
+ } else {
+ request.setAttribute("message", "Login ou mot de passe erroné");
+ }
+
+ return trouve;
+ }
+}
diff --git a/src/java/form/EditionForm.java b/src/java/form/EditionForm.java
new file mode 100644
index 0000000..7300d13
--- /dev/null
+++ b/src/java/form/EditionForm.java
@@ -0,0 +1,45 @@
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+package form;
+import bdd.GradeMySQL;
+import bdd.PompierMySQL;
+import bdd.StatutMySQL;
+import bdd.TypePersoMySQL;
+import bdd.TrancheMySQL;
+import beans.Pompier;
+import beans.Statut;
+import beans.TypePers;
+import beans.Grade;
+import beans.Tranche;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpSession;
+import java.util.ArrayList;
+import util.CtrlSaisie;
+/**
+ *
+ * @author noobm
+ */
+public class EditionForm {
+ String message;
+ HttpServletRequest request;
+
+ public EditionForm(HttpServletRequest request) {
+ this.request = request;
+ }
+ public boolean ctrlEdition() {
+ request.removeAttribute("message");
+ String[] champsObligatoires = {"username", "password",};
+ if (!CtrlSaisie.CtrlChampsObligatoires(request, champsObligatoires)) {
+ return false;
+ }
+
+ // Vérification absence de chevron
+ if (!CtrlSaisie.CtrlChevron(request)) {
+ return false;
+ }
+ return true;
+ }
+
+}
diff --git a/src/java/util/CtrlSaisie.java b/src/java/util/CtrlSaisie.java
new file mode 100644
index 0000000..a40fba5
--- /dev/null
+++ b/src/java/util/CtrlSaisie.java
@@ -0,0 +1,64 @@
+/*
+ * util/CtrlSaisie.java
+ */
+package util;
+
+import jakarta.servlet.http.HttpServletRequest;
+import java.util.ArrayList;
+import java.util.Enumeration;
+
+/**
+ *
+ * @author domin
+ */
+public abstract class CtrlSaisie {
+ /**
+ * Vérifie la présence des champs obligatoires dans les paramètres transmis
+ * @param request
+ * @param champsObligatoires : tableau de chaine de caractères, avec le nom des champs obligatoires
+ * @return booléen
+ */
+ public static boolean CtrlChampsObligatoires(HttpServletRequest request, String[] champsObligatoires) {
+ ArrayList champsPresents = new ArrayList<>(request.getParameterMap().keySet());
+ int i = 0;
+ int nbChampsO = champsObligatoires.length;
+ boolean erreur = false;
+ while (erreur == false && i < nbChampsO && champsPresents.contains(champsObligatoires[i])){
+ String value=request.getParameter(champsObligatoires[i]);
+ if (value.trim().length() > 0) {
+ i++;
+ } else {
+ erreur = true;
+ }
+ }
+ if (i < nbChampsO) {
+ request.setAttribute("message", "Veuillez renseigner toutes les zones obligatoires ("+i+')');
+ }
+ return (i>=nbChampsO);
+ }
+
+ /**
+ * Contrôle si un champ de saisie contient un chevron
+ * @param request
+ * @return 0 sinon, -1 si oui
+ */
+ public static boolean CtrlChevron(HttpServletRequest request) {
+ // Contrôle car "<" dans les zones de texte
+ Enumeration lesNoms = request.getParameterNames();
+ int erreur = 0;
+ //ArrayList parameterNames = new ArrayList(request.getParameterMap().keySet());
+ while (erreur == 0 && lesNoms.hasMoreElements()) {
+ Object paramObjet=lesNoms.nextElement();
+ String param=(String) paramObjet;
+ String value=request.getParameter(param);
+ if (value.contains("<") || value.contains("<")) {
+ String message = "Veuillez recommencer votre saisie, une anomalie sur une zone de saisie a été détectée ";
+ request.setAttribute("message", message);
+ erreur=1;
+ }
+ }
+ return (erreur > 0) ? false : true;
+
+ }
+
+}
diff --git a/src/java/util/MD5.java b/src/java/util/MD5.java
new file mode 100644
index 0000000..cccd368
--- /dev/null
+++ b/src/java/util/MD5.java
@@ -0,0 +1,36 @@
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package util;
+
+/**
+ *
+ * @author sio
+ */
+
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+public abstract class MD5 {
+
+ public static String encode(String uneChaine){
+ MessageDigest md = null;
+ try {
+ md = MessageDigest.getInstance("MD5");
+ } catch (NoSuchAlgorithmException ex) {
+ throw new IllegalArgumentException(ex);
+ }
+ md.update(uneChaine.getBytes());
+ byte[] digest = md.digest();
+ //myHash = DatatypeConverter.printHexBinary(digest).toLowerCase();
+ StringBuilder sb = new StringBuilder();
+ for (byte b : digest) {
+ sb.append(String.format("%02x", b));
+ }
+ return sb.toString();
+ }
+}
diff --git a/web/META-INF/context.xml b/web/META-INF/context.xml
new file mode 100644
index 0000000..f040549
--- /dev/null
+++ b/web/META-INF/context.xml
@@ -0,0 +1,2 @@
+
+
diff --git a/web/WEB-INF/shared/EnteteJSP.jsp b/web/WEB-INF/shared/EnteteJSP.jsp
new file mode 100644
index 0000000..0708496
--- /dev/null
+++ b/web/WEB-INF/shared/EnteteJSP.jsp
@@ -0,0 +1,13 @@
+
+
+
+
+
+ SDIS29
+
+
+
+<%@ page contentType="text/html;charset=UTF-8" language="java" %>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
+
+
diff --git a/web/WEB-INF/shared/FooterJSP.jsp b/web/WEB-INF/shared/FooterJSP.jsp
new file mode 100644
index 0000000..8f7ac75
--- /dev/null
+++ b/web/WEB-INF/shared/FooterJSP.jsp
@@ -0,0 +1,3 @@
+
+
+