Как получить доступ к атрибутам запроса в JSP? - PullRequest
55 голосов
/ 06 февраля 2011

В настоящее время я использую:

<%
final String message = (String) request.getAttribute ("Error_Message");
%>

, а затем

<%= message %>

Однако мне интересно, можно ли сделать то же самое с EL или JSTL вместо использования скриптлета.

Ответы [ 3 ]

85 голосов
/ 06 февраля 2011

EL выражение:

${requestScope.Error_Message}

В JSP EL есть несколько неявных объектов.См. Язык выражений под заголовком «Неявные объекты».

2 голосов
/ 18 мая 2016

Использование JSTL:

<c:set var="message" value='${requestScope["Error_Message"]}' />

Здесь var устанавливает имя переменной, а request.getAttribute равно requestScope . Но это не обязательно. $ {Error_Message} даст вам тот же результат. Он будет искать все области. Если вы хотите выполнить какую-либо операцию с содержимым, которое вы берете из Error_Message , вы должны сделать это, используя message . как ниже одного.

<c:out value="${message}"/>
1 голос
/ 21 июня 2017

Просто отметьте это здесь в случае, если у кого-то еще есть подобная проблема.
Если вы перенаправляете запрос непосредственно в JSP, используя конфигурацию Apache Tomcat web.xml, то ${requestScope.attr}, похоже, не работает,вместо ${param.attr} содержится атрибут запроса attr.

...