package zall.page; import zall.ZalleryServlet; import zall.bean.User; import zall.manager.AuthenticationManager; import zall.util.UserMessage; import zutil.db.DBConnection; import zutil.log.LogUtil; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.sql.SQLException; import java.util.logging.Logger; @WebServlet("/login") public class LoginServlet extends ZalleryServlet { private static Logger logger = LogUtil.getLogger(); private static final String JSP_FILE = "page_login.jsp"; public void doGet(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws ServletException, IOException { include(JSP_FILE, request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response, DBConnection db) throws SQLException, ServletException, IOException { UserMessage msgs = UserMessage.getUserMessage(request.getSession()); User user = AuthenticationManager.authenticate(db, request.getParameter("email"), request.getParameter("password")); // Successful login if (user != null) { user.registerOnHost(request, response, db, true ); AuthenticationManager.setUserSession(user, request.getSession()); forward("/", request, response); } // Failed login else { msgs.add(UserMessage.MessageType.ERROR, lang.getString("error.incorrect.user_or_pass")); } doGet(request, response, db); } }