Атрибут области печати сеанса, заданный сервлетом на странице JSP через JSTL - PullRequest
1 голос
/ 15 июня 2019

Я хочу установить значение области сеанса из сервлета Java и распечатать его на странице JSP с помощью JSTL.

Вот что я пробовал:

Добавлена ​​зависимость в pom.xml:

<dependency>
  <groupId>javax</groupId>
  <artifactId>javaee-api</artifactId>
  <version>8.0.1</version>
  <scope>provided</scope>
</dependency>

<dependency>
  <groupId>jstl</groupId>
  <artifactId>jstl</artifactId>
  <version>1.2</version>
</dependency>

Установить атрибут из сервлета:

    if (error) {
        HttpSession session = request.getSession(true);
        session.setAttribute("failureReason", "test error");
        response.sendRedirect("/com/test.jsp");
    }

Теперь со страницы test.jsp, если я напишу:

<c:out value="HERE"/>

Я вижу выходные данные на странице, как я могу получить свой атрибут faultReason? Это все, что я уже пробовал:

        <c:if test="${not empty failureReason}">
            <c:out value="HERE"/>
        </c:if>

        <c:if test="${not empty sessionScope.failureReason}">
            <c:out value="HERE"/>
        </c:if>

        <c:if test="${sessionScope.failureReason != null}">
            <c:out value="HERE"/>
        </c:if>

        <c:if test="${failureReason != null}">
            <c:out value="HERE"/>
        </c:if>

        <c:if test="${!empty sessionScope.failureReason}">
            <c:out value="HERE"/>
        </c:if>

        <c:if test="${!empty failureReason}">
            <c:out value="HERE"/>
        </c:if>

Кажется, ничего не работает.

1 Ответ

0 голосов
/ 15 июня 2019

решаемая.Я отредактировал файл web.xml следующим образом:

<web-app
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    version="2.5">

...