Это ожидаемое поведение.
Когда вы используете <jsp:include>
, он выполнил цель в отдельном запросе, а затем включил выходные данные во включающий JSP.Он не включает источник включенной цели, он включает вывод .Средства, с помощью которых генерируется этот целевой вывод, теряются.
Чтобы сделать то, что вы пытаетесь сделать, вам нужно использовать директивы <% include %>
:
<%@ include file="/WEB-INF/jsp/include/header.jsp" %>
Это приведет к наклонубуквальный текст header.jsp
на вашу страницу.Конечно, делая это, вы больше не можете передавать параметры в него, поэтому вам нужно установить его как атрибут контекста страницы (например, используя <c:set>
... но, конечно, вы не можете использовать <c:set>
доВы сделали свое включение ...).
По сути, это действительно не стоит хлопот.Декларации Taglib раздражают, но от них трудно избавиться.