Сначала проверьте, если context.xml
веб-приложения не настроено cookies="false"
.
Кроме того, полезно знать, что файлы cookie зависят от домена, порта и контекста. Если ссылки на странице указывают на другой домен, порт и / или контекстный путь в отличие от текущего URL-адреса запроса (который вы видите в адресной строке браузера), то cookie не будет передан в результате чего сеанс больше не будет идентифицирован, и, таким образом, вы получите новый от контейнера сервлетов.
Если это не причина, то проверьте, не выполняете ли вы перенаправление на каждый запрос, используя HttpServletResponse.sendRedirect()
по какой-то причине. Если вы сделаете это уже по самому первому запросу, то куки будут потеряны. Вам нужно будет заменить
response.sendRedirect(url);
по
response.sendRedirect(response.encodeRedirectURL(url));