подскажите, как хранить jsessionid в cookie, чтобы его можно было передать сервлету с помощью почтового запроса?Я использую Apache HttpClient версии 4.0.3.Все решения, которые я нашел, объясняют, как это сделать с помощью HttpClient 3.1.Я прочитал учебник и попробовал это, но он не работает.
HttpPost httppost = new HttpPost(postData);
CookieStore cookieStore = new BasicCookieStore();
BasicClientCookie cookie = new BasicClientCookie("JSESSIONID", getSessionId());
cookieStore.addCookie(cookie);
client.setCookieStore(cookieStore);
response = client.execute(httppost);
Редактировать - дальнейшие объяснения Я подключаюсь к сервлетам, написанным другом.Я вошел в систему и получил jsessionid
.Теперь я хочу отправить еще один запрос, и мне нужно передать jsessionid для авторизации.Сервлет работает нормально, потому что я использовал Java HttpURLConnection, установил cookie, передал его и все заработало.Теперь с HttpClient я не получаю никаких исключений, но код возврата из сервлета друга указывает, что в запросе не было sessionid.
Другое редактирование - у меня есть одно решение Я установил параметр заголовка запроса, и он работал.Сервлет признан сессионным.httppost.setHeader("Cookie", "JSESSIONID="+ getSessionId());
Теперь мой вопрос: правильный ли этот метод?