Как передать переменную из сервлета на страницу JSP? - PullRequest
6 голосов
/ 08 февраля 2011

У меня есть сервлет (фронт-контроллер), который анализирует запрос, подготавливает некоторые необходимые данные (модель) и затем должен передать их в jsp для обработки.

Как передать данные изсервлет в JSP?(Я надеялся, что можно было добавить новые параметры в карту параметров в объекте request, но эта карта неизменяема).

Я могу добавить атрибуты в request, но я не знаю, какчтобы извлечь их из jsp.

Все данные должны находиться в области запроса.Какой правильный путь?

Ответы [ 2 ]

6 голосов
/ 08 февраля 2011

Я могу добавить атрибуты к запросу, но я не знаю, как получить их из jsp.
Вам не нужно специально «извлекать» их, просто ссылаясь на них работает

request.setAttribute("titleAttribute", "kittens are fuzzy");

, а затем

Title here: ${titleAttribute}
3 голосов
/ 08 февраля 2011

Для этого вы можете использовать запрос или область сеанса.Помимо ответа Никиты Рыбака, вы можете использовать

request.getSession().setAttribute("key","value");

, а затем использовать его в JSP с помощью скрипта.

<%=session.getAttribute("key")%>

Обратите внимание, что в примере, приведенном Никитой, использовался язык выражений (EL) (я не уверен, что это теги JSTL).Вы должны явно указать, что EL не следует игнорировать, используя свойство isELIgnored.

<%@ page isELIgnored="false" %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...