我正在使用Tomcat 6.0.32,并尝试将一个JSP文件包含到另一个JSP文件中,但不知何故找不到该文件(是的,该文件确实存在)。文件结构和代码如下:
<jsp:include page="${pageContext.request.contextPath}/templates/header.jsp">
</jsp:include>
WebContent
- folder/caller.jsp
- templates/header.jsp但是,如果我在此之外使用${pageContext.request.contextPath}来检查它的输出是否正确,它是否正常工作,有人知道为什么会发生这种情况吗?
发布于 2011-05-04 08:59:27
我甚至不确定您是否可以在<jsp:include>中使用运行时变量,但另一个问题是,the contextPath refers指向从服务器请求的URL的上下文,并且不一定与您的文件系统布局相对应。
为什么不直接使用<jsp:include page="templates/header.jsp">呢?
发布于 2011-10-28 08:08:59
我完全同意上面的答案,但是,如果你必须这样使用它,那么下面的代码应该是有效的
<c:set var="myContext" value="${pageContext.request.contextPath}"/>
<jsp:include page="${myContext}/templates/header.jsp"> </jsp:include> https://stackoverflow.com/questions/5877354
复制相似问题