я могу получить переменные сеанса, сохраненные сервлетом за 2 шага до текущего сервлета / jsp? - PullRequest
0 голосов
/ 31 июля 2011

Я пытаюсь получить переменные сеанса, которые были сохранены сервлетом.В приложении сервлет перенаправляет пользователя на внешний URL-адрес аутентификации (например, аутентификация Windows Live) ... и перед перенаправлением сервлет сохраняет некоторые значения в качестве переменных сеанса.

После аутентификации пользователя при внешней аутентификацииURL, теперь он перенаправлен на вторую страницу моего приложения.Эта вторая страница может быть jsp или servlet.

Мой вопрос: возможно ли получить переменные сеанса, изначально сохраненные исходным сервлетом, на второй странице?Смогу ли я получить переменные сеанса независимо от того, является ли вторая страница jsp или сервлетом?

И если переменные сеанса, сохраненные таким образом, не могут быть получены, то как мне получить эти переменные (т.е., пожалуйста, предложите альтернативный метод) ....

Ответы [ 2 ]

1 голос
/ 31 июля 2011

Да, если сервлет, выдавший переменные сеанса (неясно, так ли это), находится в том же веб-приложении (WAR), вы можете просто получить переменные области сеанса, вызвав HttpServletRequest.getSession().getAttribute("someName");. Это работает как в сервлетах, так и в JSP.

Кстати: это будет отлично работать, если ваш сеанс поддерживается cookie. Если вы используете перезапись URL-адреса, это зависит от API Windows Live, в этом случае Windows Live должен включить параметр идентификатора сеанса в строку запроса, которая перенаправляет обратно в ваше приложение.

0 голосов
/ 31 июля 2011

Вы должны убедиться, что файл cookie сеанса или перезапись URL-адреса работают.Затем сеанс следует сохранить.

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