Я пытаюсь включить страницу jsp в другую, и, поскольку я не хочу жестко кодировать пути, я хочу использовать методы request.getContextPath(). Но я просто не могу заставить его работать. Я пробовал разные вещи, основываясь на разных ответах здесь:
Первое, что я сделал, это
<jsp:include page="<%=request.getContextPath()%>/structure/Navbar.jsp" />
дает мне:
HTTP Status 500 - /structure/ArtiMarziali/Aikido.jsp (line: 11, column: 24) attribute value for [page] is not properly terminated
Итак, я попытался:
<% String aikido = request.getContextPath() + "/structure/Navbar.jsp"; %>
<jsp:include page="<%= aikido %>" />
выдает исключение:
HTTP Status 500 - javax.servlet.ServletException: File [/ProgettoPW/structure/Navbar.jsp] not found
Затем:
<jsp:include page="<%= request.getContextPath() + "/structure/Navbar.jsp" %>" />
говорит, что мне нужно избежать кавычек, что я не могу сделать
а также
<jsp:include page='<%= request.getContextPath() + "/structure/Navbar.jsp" %>' />
выдает ту же ошибку, что и первая. Я попытался установить результат getContextPath в переменную и использовать ее в теге, но те же ошибки, что и раньше.
Я действительно не знаю, в чем проблема, мне нужна помощь, спасибо.
(Да, я знаю, что использование ‹%= %> и других скриптлетов в настоящее время осуждается, но мой курс преподавался таким образом, и я хочу придерживаться его для проекта)
Изменить: это структура файла, может быть полезно:
<jsp:include page="/structure/Navbar.jsp" />
? - person Nicolas Filotto   schedule 24.09.2016