JSP 包含因 request.getContextPath() 而失败的页面
JSP include page failing with request.getContextPath()
我想在另一个页面中包含一个 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 的结果设置为一个变量并在标记中使用它,但仍然出现与以前相同的错误。
我真的不知道我的问题是什么,我需要一些帮助,谢谢。
(是的,我知道现在不赞成使用 <%= %> 和其他 scriptlet,但我的课程是以这种方式教授的,我想在项目中坚持使用它)
编辑:这是文件结构,可能有用:
该路径已经相对于 上下文路径,因此您无需将其添加到您的 include
指令(希望如此),这意味着这将起作用:
<jsp:include page="/structure/Navbar.jsp" />
我想在另一个页面中包含一个 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 的结果设置为一个变量并在标记中使用它,但仍然出现与以前相同的错误。
我真的不知道我的问题是什么,我需要一些帮助,谢谢。
(是的,我知道现在不赞成使用 <%= %> 和其他 scriptlet,但我的课程是以这种方式教授的,我想在项目中坚持使用它)
编辑:这是文件结构,可能有用:
该路径已经相对于 上下文路径,因此您无需将其添加到您的 include
指令(希望如此),这意味着这将起作用:
<jsp:include page="/structure/Navbar.jsp" />