Guest User

Untitled

a guest
Apr 14th, 2018
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.46 KB | None | 0 0
  1. public class AuthenticationFilter implements Filter {
  2. @Override
  3. public void init(FilterConfig filterConfig) throws ServletException {
  4.  
  5. }
  6.  
  7. @Override
  8. public void destroy() {
  9.  
  10. }
  11.  
  12. @Override
  13. public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
  14. HttpServletRequest request = (HttpServletRequest) servletRequest;
  15. HttpServletResponse response = (HttpServletResponse) servletResponse;
  16.  
  17. String login = request.getParameter("login");
  18. String password = request.getParameter("password");
  19.  
  20. UserDaoImpl userDao = new UserDaoImpl();
  21.  
  22. HttpSession session = request.getSession();
  23.  
  24. if (nonNull(session) && nonNull(session.getAttribute("login")) && nonNull(session.getAttribute("password"))) {
  25. User.ROLE role = (User.ROLE) session.getAttribute("role");
  26.  
  27. moveToMenu(request, response, role);
  28. } else if (userDao.userIsExist(login, password)) {
  29.  
  30. User.ROLE role = userDao.getRoleByLoginPassword(login, password);
  31.  
  32. request.getSession().setAttribute("password", password);
  33. request.getSession().setAttribute("login", login);
  34. request.getSession().setAttribute("role", role);
  35.  
  36. moveToMenu(request, response, role);
  37. } else {
  38. moveToMenu(request, response, User.ROLE.UNKNOWN);
  39. }
  40. }
  41.  
  42. private void moveToMenu(HttpServletRequest req, HttpServletResponse res, User.ROLE role) throws ServletException, IOException {
  43. if (role.equals(User.ROLE.ADMIN)) {
  44. req.getRequestDispatcher("/WEB-INF/view/adminPage.jsp").forward(req, res);
  45. } else if (role.equals(User.ROLE.USER)) {
  46. req.getRequestDispatcher("/WEB-INF/view/userPage.jsp").forward(req, res);
  47. } else {
  48. req.getRequestDispatcher("/WEB-INF/view/index.jsp").forward(req, res);
  49. }
  50. }
  51. }
  52.  
  53. request.getSession().setAttribute("password", password);
  54. request.getSession().setAttribute("login", login);
  55. request.getSession().setAttribute("role", role);
  56.  
  57. <html><body>
  58. <h1>Dear, User!</h1>
  59. <br />Your login: <% out.println(session.getAttribute("login")); %>
  60. <br />Your password: <% out.println(session.getAttribute("password")); %>
  61. <br />Your role: <% out.println(session.getAttribute("role")); %>
  62. </html></body>
  63.  
  64. PrintWriter out = response.getWriter();
  65. out.println("...");
  66. ...
  67.  
  68. out.println("<html><body>");
  69. ...
  70. out.println("</html></body>");
  71.  
  72. <html><body>
  73. <h1>Dear, User!</h1>
  74. <br />Your login: <%= session.getAttribute("login") %>
  75. <br />Your password: <%= session.getAttribute("password") %>
  76. <br />Your role: <%= session.getAttribute("role") %>
  77. </html></body>
  78.  
  79. PrintWriter out = response.getWriter();
  80. HttpSession session = request.getSession();
  81. ...
  82.  
  83. <%@ taglib uri = "http://java.sun.com/jsp/jstl/core" prefix = "c" %>
  84. <html><body>
  85. <c:choose>
  86. <c:when test="${user == null}">
  87. <h1>Hello, guest!</h1>
  88. </c:when>
  89.  
  90. <c:otherwise>
  91. <h1>Dear, User!</h1>
  92. <br />Your login: ${login}
  93. <br />Your password: ${password}
  94. <br />Your role: ${role}
  95.  
  96. <form action="/change" method="POST">
  97. <br />Change your login: <input type="text" name="login" />
  98. <br />Change your password: <input type="password" name="password" />
  99. <br /><input type="submit" value="Change" />
  100. </form>
  101. <c:otherwise>
  102. </c:choose>
  103. </html></body>
  104.  
  105. ...
  106. User user = new User(login, password, role);
  107. session.setAttribute("user", user);
  108. ...
Add Comment
Please, Sign In to add comment