您需要在链接URL前面添加一个域相对路径,包括通过获得的上下文路径
HttpServletRequest#getContextPath()。我不做Scala,所以我不能给出以Scala为目标的答案,但是这是您在JSP中执行的方法,以便使声音听起来很美:
<a href="${pageContext.request.contextPath}/servlet">link</a>当当前上下文路径为时
/foo,以上内容将以HTML结尾,如下所示:
<a href="/foo/servlet">link</a>
或者,如果您要在Servlet类中使用Java以编程方式生成HTML(这实际上是一种较差的做法,但除此之外):
out.println("<a href="" + request.getContextPath() + "/servlet">link</a>");一种替代方法是
<base>在HTML中设置标记,以便所有相对链接都相对于它,有关更多详细信息,请参见以下答案:浏览器无法在调用Servlet时访问/查找CSS,图像和链接之类的相对资源,该Servlet会转发至JSP



