Skip to content
Snippets Groups Projects
Commit a28d36f1 authored by Maxime Gosselin's avatar Maxime Gosselin
Browse files

MessageController, Navigation et ThreadController gèrent les erreurs

parent 7be2a4fa
Branches
No related tags found
No related merge requests found
......@@ -40,7 +40,7 @@ public class MessageController extends HttpServlet {
vue = "thread?action=open&id=" + idThread;
} catch (NumberFormatException exception){
req.setAttribute("error", "Ne changez pas l'url vous même!");
vue = "/WEB-INF/error.jsp";
vue = "/WEB-INF/vue/error.jsp";
}
break;
......@@ -64,7 +64,8 @@ public class MessageController extends HttpServlet {
}
break;
default:
vue = "";
req.setAttribute("error", "Ne changez pas l'url vous même!");
vue = "/WEB-INF/vue/error.jsp";
}
req.getRequestDispatcher(vue).forward(req, resp);
}
......
......@@ -13,35 +13,39 @@ public class Navigation extends HttpServlet{
@Override
public void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String page = (String) req.getParameter("page");
String vue;
// vérification de l'authentification
if(req.getSession().getAttribute("username") == null && !page.equals("signin")){
if(req.getSession().getAttribute("username") == null && !page.equals("signin")) {
resp.sendRedirect("index.html");
} else {
switch (page){
case "fils":
vue = "WEB-INF/vue/fils.jsp";
break;
case "signin":
vue = "WEB-INF/vue/signin.jsp";
break;
case "login":
vue = "WEB-INF/vue/login.jsp";
break;
case "compte":
vue = "WEB-INF/vue/compte.jsp";
break;
case "filsSuivis":
vue = "WEB-INF/vue/filsSuivis.jsp";
break;
case "creerFil":
vue = "WEB-INF/vue/creerFil.jsp";
break;
default:
vue = "WEB-INF/vue/accueil.jsp";
}
req.getRequestDispatcher(vue).forward(req, resp);
return;
}
String vue;
switch (page){
case "fils":
vue = "WEB-INF/vue/fils.jsp";
break;
case "signin":
vue = "WEB-INF/vue/signin.jsp";
break;
case "login":
vue = "WEB-INF/vue/login.jsp";
break;
case "compte":
vue = "WEB-INF/vue/compte.jsp";
break;
case "filsSuivis":
vue = "WEB-INF/vue/filsSuivis.jsp";
break;
case "creerFil":
vue = "WEB-INF/vue/creerFil.jsp";
break;
default:
req.setAttribute("error", "Ne changez pas l'url vous même!");
req.getRequestDispatcher("/WEB-INF/vue/error.jsp");
return;
}
req.getRequestDispatcher(vue).forward(req, resp);
}
}
\ No newline at end of file
......@@ -27,17 +27,35 @@ public class ThreadController extends HttpServlet {
String vue;
DaoFollower daoFollower = new DaoFollower();
DaoThread daoThread = new DaoThread();
int idThread;
if (req.getParameter("id") == null) idThread = -1;
else {
// Vérifie que l'id mis est bien un int (au cas où il a été changé à la main
try {
idThread = Integer.parseInt(req.getParameter("id"));
}catch (NumberFormatException e) {
req.setAttribute("error", "Ne changez pas l'url vous même!");
vue = "WEB-INF/vue/error.jsp";
req.getRequestDispatcher(vue).forward(req, resp);
return;
}
}
if(req.getParameter("id") == null) idThread = -1;
else idThread = Integer.parseInt(req.getParameter("id"));
if(daoThread.findById(idThread) == null){
req.setAttribute("error", "Ne changez pas l'url vous même!");
req.getRequestDispatcher("/WEB-INF/vue/error.jsp");
return;
}
Follower follow = new Follower(username, idThread);
switch (action){
case "follow":
if(daoFollower.checkFollowerExist(follow)){
resp.sendRedirect("index.html");
req.setAttribute("error", "Vous suivez déjà ce fils");
req.getRequestDispatcher("/WEB-INF/vue/error.jsp");
return ;
}
daoFollower.create(follow);
......@@ -66,7 +84,9 @@ public class ThreadController extends HttpServlet {
vue = "WEB-INF/vue/chat.jsp?id=" + idThread;
break;
default:
vue = "WEB-INF/vue/fils.jsp";
req.setAttribute("error", "Ne changez pas l'url vous même!");
req.getRequestDispatcher("/WEB-INF/vue/error.jsp");
return;
}
req.getRequestDispatcher(vue).forward(req, resp);
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment