Как создать новый идентификатор сеанса http без закрытия Internet Explorer в сервлете - PullRequest
1 голос
/ 25 февраля 2011

В моей системе после входа пользователя на страницу я хочу создать новый идентификатор сеанса http без закрытия Internet Explorer.

Я пишу код так:

public void doGet(HttpServletRequest request,
                  HttpServletResponse response)
    throws IOException, ServletException
{


    HttpSession session = request.getSession(true);
    System.out.println("session id:"+session.getId());



    session.invalidate();

    deleteCookie( request.getCookies(),request,response);

    session = request.getSession();

    System.out.println("new session id:"+session.getId());

} 

private void deleteCookie(Cookie[] cookies,HttpServletRequest req,HttpServletResponse response){
    logger.debug("Delete cookie");


    int cookieLenght = cookies.length;
    for (int i = 0; i < cookieLenght; i++) {
        Cookie cookie = cookies[i];
        cookie.setMaxAge(0);
        cookie.setPath("/");

        response.addCookie(cookie);

    }

 }

Даже я отменяю сеанс, удаляю cookie, получаю новый сеанс, но идентификатор сеанса остается прежним. Я не знаю почему. Есть ли решение для создания нового идентификатора сеанса, не закрывая Internet Explorer?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...