diff --git a/WEB-INF/src/controleur/ThreadController.java b/WEB-INF/src/controleur/ThreadController.java
index 4c79a529e78a5c4f2e9dc915845856a1c01f2874..940e345f9fe208572ee9cd36337808589b16d498 100644
--- a/WEB-INF/src/controleur/ThreadController.java
+++ b/WEB-INF/src/controleur/ThreadController.java
@@ -3,6 +3,9 @@ package controleur;
 import java.io.IOException;
 import java.time.LocalDate;
 
+import org.apache.commons.text.StringEscapeUtils;
+import org.apache.commons.text.translate.CharSequenceTranslator;
+
 import jakarta.servlet.ServletException;
 import jakarta.servlet.annotation.WebServlet;
 import jakarta.servlet.http.HttpServlet;
@@ -79,6 +82,8 @@ public class ThreadController extends HttpServlet {
                 break;
             case "create":
                 String name = req.getParameter("name");
+                CharSequenceTranslator cst = StringEscapeUtils.ESCAPE_HTML4;
+                name = cst.translate(name);
                 idThread = daoThread.create(new Thread(idThread, username, name, LocalDate.now()));
                 follow = new Follower(username, idThread);
                 daoFollower.create(follow);
diff --git a/WEB-INF/src/modele/dao/Dao.java b/WEB-INF/src/modele/dao/Dao.java
deleted file mode 100644
index e6df44f0dde1f3cc91ba2bb8fa293a442094f3e3..0000000000000000000000000000000000000000
--- a/WEB-INF/src/modele/dao/Dao.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package modele.dao;
-
-import java.util.List;
-
-public interface Dao<E>{
-    List<E> findAll();
-    void create(E elt);
-    void update(E elt);
-    void delete(E elt);
-}
diff --git a/WEB-INF/src/modele/dao/DaoThread.java b/WEB-INF/src/modele/dao/DaoThread.java
index 710adf7b655ef96aec65194c78034a5907957a04..63b94588812a0b619ba1ba1d0de86d6e74a7bb6f 100644
--- a/WEB-INF/src/modele/dao/DaoThread.java
+++ b/WEB-INF/src/modele/dao/DaoThread.java
@@ -92,7 +92,7 @@ public class DaoThread {
         DS bdd = DS.getInstance();
         List<Thread> res = new ArrayList<>();
         try(Connection con = bdd.getConnection()) {
-            PreparedStatement ps = con.prepareStatement("SELECT * FROM threads WHERE id_thread NOT IN (SELECT id_thread FROM followers WHERE username = ?)");
+            PreparedStatement ps = con.prepareStatement("SELECT * FROM threads WHERE id_thread NOT IN (SELECT id_thread FROM followers WHERE username = ?) ORDER BY date DESC");
             ps.setString(1, creator);
             ResultSet rs = ps.executeQuery();
             while (rs.next()) {
@@ -108,7 +108,7 @@ public class DaoThread {
         DS bdd = DS.getInstance();
         List<Thread> res = new ArrayList<>();
         try(Connection con = bdd.getConnection()) {
-            PreparedStatement ps = con.prepareStatement("SELECT * FROM threads WHERE id_thread IN (SELECT id_thread FROM followers WHERE username = ?)");
+            PreparedStatement ps = con.prepareStatement("SELECT * FROM threads WHERE id_thread IN (SELECT id_thread FROM followers WHERE username = ?) ORDER BY date DESC");
             ps.setString(1, creator);
             ResultSet rs = ps.executeQuery();
             while (rs.next()) {
diff --git a/WEB-INF/vue/chat.jsp b/WEB-INF/vue/chat.jsp
index fc8ddd6aba292a4563dc5e73630eabe7fd966f10..3ec10aae5be6e53ea45f3d787cff0cba0143be12 100644
--- a/WEB-INF/vue/chat.jsp
+++ b/WEB-INF/vue/chat.jsp
@@ -126,7 +126,7 @@
                         <a class="input-group-text link-primary" href="thread?action=open&id=<%=id %>">
                             <i class="bi-arrow-clockwise"></i>
                         </a>
-                        <input name="message" class="form-control" placeholder="Entrez votre message ici." required>
+                        <input name="message" class="form-control" placeholder="Entrez votre message ici." maxlength=1024 required>
                         <input type="submit" class="input-group-text" value="Envoyer">
                     </form>
                 </div>
diff --git a/lib/jackson-annotations-2.15.3.jar b/lib/jackson-annotations-2.15.3.jar
new file mode 100644
index 0000000000000000000000000000000000000000..83a6e4ddaacd47fa06e8e464d9c7af645b53ff23
Binary files /dev/null and b/lib/jackson-annotations-2.15.3.jar differ
diff --git a/lib/jackson-core-2.15.3.jar b/lib/jackson-core-2.15.3.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f0c53d16aa074ab1bc97346eb7d3502ac0ecc03f
Binary files /dev/null and b/lib/jackson-core-2.15.3.jar differ
diff --git a/lib/jackson-databind-2.15.3.jar b/lib/jackson-databind-2.15.3.jar
new file mode 100644
index 0000000000000000000000000000000000000000..b1a891a3a152ad0323b5fcbcbfa046aa8bd36d9a
Binary files /dev/null and b/lib/jackson-databind-2.15.3.jar differ
diff --git a/lib/jackson-datatype-jsr310-2.8.6.jar b/lib/jackson-datatype-jsr310-2.8.6.jar
new file mode 100644
index 0000000000000000000000000000000000000000..544f3e843ad73f7cb2d3de9168c27e71eecd3585
Binary files /dev/null and b/lib/jackson-datatype-jsr310-2.8.6.jar differ
diff --git a/lib/postgresql.jar b/lib/postgresql.jar
new file mode 100644
index 0000000000000000000000000000000000000000..091b4d13a417d635f5a1d7a42b482f88a6f3bf65
Binary files /dev/null and b/lib/postgresql.jar differ
diff --git a/lib/servlet-api.jar b/lib/servlet-api.jar
new file mode 100644
index 0000000000000000000000000000000000000000..bd79a8be34b3e074e31a1f1733c141b19a3c1b90
Binary files /dev/null and b/lib/servlet-api.jar differ
diff --git a/delete_the_podman_psql_container.sh b/scripts/delete_the_podman_psql_container.sh
similarity index 100%
rename from delete_the_podman_psql_container.sh
rename to scripts/delete_the_podman_psql_container.sh
diff --git a/install_psql_on_podman_container.sh b/scripts/install_psql_on_podman_container.sh
similarity index 74%
rename from install_psql_on_podman_container.sh
rename to scripts/install_psql_on_podman_container.sh
index 53a24bb66c5f8d1c6b4513e527a6705270673fd0..ef3e0f6f9bf212ace1d128a842e4cf773eb686b6 100755
--- a/install_psql_on_podman_container.sh
+++ b/scripts/install_psql_on_podman_container.sh
@@ -10,9 +10,9 @@ podman run -d --name bdd -e POSTGRES_USER=user -e POSTGRES_PASSWORD=password -e
 #On attend que le port fonctionne
 sleep 2
 
-PGPASSWORD=password psql -h localhost -p 9090 -U user -d bdd -a -f baseDeDonnee/init.sql && PGPASSWORD=password psql -h localhost -p 9090 -U user -d bdd -a -f baseDeDonnee/setup.sql && echo "Ajout des tables et des données effectuée !"
+PGPASSWORD=password psql -h localhost -p 9090 -U user -d bdd -a -f ../baseDeDonnee/init.sql && PGPASSWORD=password psql -h localhost -p 9090 -U user -d bdd -a -f ../baseDeDonnee/setup.sql && echo "Ajout des tables et des données effectuée !"
 
 echo "driver=org.postgresql.Driver
 url=jdbc:postgresql://localhost:9090/bdd
 login=user
-password=password" > WEB-INF/config.prop && echo "Modification du config.prop effectuée."
\ No newline at end of file
+password=password" > ../WEB-INF/config.prop && echo "Modification du config.prop effectuée."
\ No newline at end of file
diff --git a/reset_configprop.sh b/scripts/reset_configprop.sh
similarity index 54%
rename from reset_configprop.sh
rename to scripts/reset_configprop.sh
index 17807fc35bd156214d58a576a81984446c61b26b..7cb778363780f68660fa8cf724b4d3d68641e7b3 100644
--- a/reset_configprop.sh
+++ b/scripts/reset_configprop.sh
@@ -2,4 +2,4 @@
 echo "driver=org.postgresql.Driver
 url=jdbc:postgresql://psqlserv/but2
 login=maximegosselinetu
-password=moi" > WEB-INF/config.prop && echo "Modification du config.prop effectuée."
\ No newline at end of file
+password=moi" > ../WEB-INF/config.prop && echo "Modification du config.prop effectuée."
\ No newline at end of file