JSP - все области внутри страницы jsp:include пусты

Я хочу поместить переменную в requestScope так что я могу использовать его на другой странице. К сожалению, requestScope абсолютно пуст на этой другой странице. На самом деле, когда я печатаю #{requestScope} на обеих страницах они не имеют одинакового адреса памяти!

mainPage.jsp

<c:set var="foo" value="${myForm.myJavaObject}" scope="request" />

<c:forEach var="scope" items="${requestScope}">
    ${scope.key} // PRINTS EVERY VARIABLE IN THE REQUEST SCOPE, INCLUDING foo
</c:forEach>

<jsp:include page="./includedPage.jsp"/>

includedPage.jsp

<c:forEach var="scope" items="${requestScope}">
    ${scope.key} // PRINTS NOTHING
</c:forEach>

То же самое, если попробовать разные области (сессия, приложение и т. Д.). Я не понимаю Этот метод используется во всем Интернете, так почему он не работает? Я впервые использую это.

1 ответ

Решение

Это работает, если я включу <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>, Я не понимаю, почему, так как он уже включен в mainPage.jsp и потому что <jsp:include> динамично

Другие вопросы по тегам