49 lines
1.5 KiB
Java
49 lines
1.5 KiB
Java
|
|
package zall.page;
|
||
|
|
|
||
|
|
import zall.ZalleryServlet;
|
||
|
|
import zall.bean.User;
|
||
|
|
import zall.manager.AuthenticationManager;
|
||
|
|
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;
|
||
|
|
|
||
|
|
import static zall.ZalleryConstant.SESSION_KEY_USER;
|
||
|
|
|
||
|
|
@WebServlet("/login")
|
||
|
|
public class LoginServlet extends ZalleryServlet {
|
||
|
|
private static Logger logger = LogUtil.getLogger();
|
||
|
|
|
||
|
|
private static final String JSP_FILE = "register.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 {
|
||
|
|
User user = AuthenticationManager.authenticate(db,
|
||
|
|
request.getParameter("email"),
|
||
|
|
request.getParameter("password"));
|
||
|
|
|
||
|
|
// Successfull login
|
||
|
|
if (user != null) {
|
||
|
|
user.registerOnHost(request, response, db, true );
|
||
|
|
request.getSession().setAttribute(SESSION_KEY_USER, user);
|
||
|
|
|
||
|
|
forward("/", request, response);
|
||
|
|
}
|
||
|
|
// Failed login
|
||
|
|
else {
|
||
|
|
include(JSP_FILE, request, response);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|