1

我正在使用 Tomcat 6.0.32,我试图将一个 JSP 文件包含到另一个文件中,但不知何故找不到该文件(是的,该文件存在)。这是文件结构和代码:

<jsp:include page="${pageContext.request.contextPath}/templates/header.jsp">
</jsp:include>

WebContent
- folder/caller.jsp
- templates/header.jsp

但是,如果我在此之外使用 ${pageContext.request.contextPath} 来检查它是否正确输出,它可以工作,有人知道为什么会这样吗?

4

2 回答 2

5

我什至不确定您是否可以在 a 中使用运行时变量<jsp:include>,但另一个问题是,contextPath的是从服务器请求的 URL 的上下文,并不一定与您的文件系统布局相对应。

你为什么不直接使用<jsp:include page="templates/header.jsp">

于 2011-05-04T00:59:27.317 回答
2

我完全同意上面的答案,但是如果你必须以这种方式使用它,那么下面的代码 shd 工作

<c:set var="myContext" value="${pageContext.request.contextPath}"/>
<jsp:include page="${myContext}/templates/header.jsp"> </jsp:include> 
于 2011-10-28T00:08:58.730 回答