Documentation
Examples
Tutorials
JAR files
Leaks
Errata
/ch7/accountCookie/ControllerHelper.java
/ch7/accountCookie/ControllerHelper.java
package ch7.accountCookie; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.Cookie; import javax.servlet.ServletException; import shared.ButtonMethod; import shared.CookieUtil; import ch7.accountLogin.RequestDataAccount; import shared.HibernateHelper; public class ControllerHelper extends ch7.accountLogin.ControllerHelper { public ControllerHelper(HttpServletRequest request, HttpServletResponse response) { super(request, response); } @Override public String jspLocation(String page) { return "/WEB-INF/classes/ch7/accountCookie/" + page; } @ButtonMethod(isDefault = true) @Override public String getMethod() { String address = "Login.jsp"; Cookie accountCookie = CookieUtil.findCookie(request, "account"); if (accountCookie != null) { Object dataPersistent = HibernateHelper.getFirstMatch(data, "accountNumber", accountCookie.getValue()); if (dataPersistent != null) { data = (RequestDataAccount) dataPersistent; } address = "Edit.jsp"; } return jspLocation(address); } @ButtonMethod(buttonName = "newUserButton") @Override public String newUserMethod() { data = new RequestDataAccount(); return jspLocation("Login.jsp"); } @ButtonMethod(buttonName = "processButton") @Override public String processMethod() { if (!isValid(data)) { return jspLocation("Expired.jsp"); } response.addCookie( new Cookie("account", data.getAccountNumber())); HibernateHelper.updateDB(data); List list = HibernateHelper.getListData(RequestDataAccount.class); request.setAttribute("database", list); return jspLocation("Process.jsp"); } @Override protected void doGet() throws ServletException, java.io.IOException { if (HibernateHelper.testDB(response)) { //Call the method with false to place a new helper in the session addHelperToSession("helper", SessionData.IGNORE); //Always show the default method String address = getMethod(); request.getRequestDispatcher(address).forward(request, response); } } @Override protected void doPost() throws ServletException, java.io.IOException { super.doPost(); } }
Contact the author