2014-01-08 3 views
0

У меня проблема с релятивистской легкостью. Я пытаюсь сделать простую программу, где вы можете войти в систему и выйти из нее, используя сеанс. Сессия создана, но я всегда получаю перенаправление на сервлет панели, а затем на страницу NoCorrectSession. Как будто на странице входа на сервер был обнаружен атрибут isActive, а затем на странице панели нет.Сессионные атрибуты теряются

//class Login extends HttpServlet 
private RequestDispatcher pageLogin, pagePanel, pageError; //defined in init() 

protected void processRequest(HttpServletRequest request, HttpServletResponse response) 
     throws ServletException, IOException { 
    HttpSession session = request.getSession(); 
    String name = request.getParameter("name"); 
    String isBeingRequested = request.getParameter("isBeingRequested"); 
    if (session.getAttribute("isActive") != null) { 
     //user has been logged in before, redirect him 
     pagePanel.forward(request, response); 
    } else if (isBeingRequested != null) { 
     //user has entered data into the login page and submitted it    
     if (name.length() == 0) { 
      //user has not stated his name 
      pageError.forward(request, response); 
     } else { 
      //otherwise access is granted and account created 
      session.setAttribute("isActive", "yes"); //setting session to active 
      pagePanel.forward(request, response); 
     } 
    } else { 
     //neither of these? user just entered the login screen 
     pageLogin.forward(request, response); 
    } 
} 

//class Panel extends HttpServlet { 
private RequestDispatcher pageNoCorrectSession; 

protected void processRequest(HttpServletRequest request, HttpServletResponse response) 
     throws ServletException, IOException { 

    HttpSession session = request.getSession(); 
    //session has expired or never was started 
    if (session.getAttribute("isActive") == null) { 
     pageNoCorrectSession.forward(request, response); 
    //session valid 
    } else { 
     //logged in - do stuff 
    } 
+0

Связанный http://stackoverflow.com/questions/17464453/using-sessions-in-java-servlet – aalku

ответ

0

После копания в проекте оказалось, я не ошибся в этих сервлетов, но в HTML код вызывает отправку формы непосредственно на панели сервлета (и не создает объект учетной записи в процессе) , Я знаю, что это глупо, но это был отличный урок. Ожидайте неожиданного: P

Смежные вопросы