В моей системе после входа пользователя на страницу я хочу создать новый идентификатор сеанса 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?