我的目录树是这样的,
- /index.jsp
- /template/topHeader.jsp
- /accounts/signin.jsp在我的index.jsp中,我包含了这样的topHeader.jsp:
<jsp:include page="template/topHeader.jsp" />这工作得很好,没有任何问题。但是在topHeader.jsp中,我有一些<a>标签,我已经给出了路径,
<div class="pull-left">
Hello! <a href="../accounts/signin.jsp">Sign in</a>.
</div>运行后,此链接给出404,这是可以理解的,因为索引页已经在根文件夹中。现在,在未来,我可能不得不在几乎所有地方都包含这个topHeader.jsp。
浏览器像这样改变url,
localhost:8084/project/index.jsp在单击登录之后(404)
localhost:8084/accounts/signin.jsp但是路径应该是
localhost:8084/project/accounts/signin.jsp我也尝试过用下面的方法包含topHeader.jsp,但是得到了相同的结果。
<%@ include file="template/topHeader.jsp" %>那么给出<a>标记的路径最简单的方法是什么呢?很抱歉,这个问题可能看起来有点不清楚,但我不知道如何更好地解释它。
发布于 2018-01-13 15:51:26
使用${pageContext.request.contextPath}给出链接的相对路径,
<a href="${pageContext.request.contextPath}/accounts/signin.jsp">Sign in</a>https://stackoverflow.com/questions/48237757
复制相似问题