在我的过滤器中,我想将请求从“/ a / b / c”过滤到“/index.html”,我使用:
req.getRequestDispatcher("/index.html").include(request, response);
它有效但在将请求转发给index.html
后,客户端请求index.html中错误的js和css路径:
例如,它请求/a/b/c/css/bootstrap.min.css
,但应该是/css/bootstrap.min.css
。
我想要做的只是转发请求/a/b/c
到index.html
,而不更改其他资源的请求路径。有什么想法吗?
感谢。
答案 0 :(得分:1)
在JSP中创建相对于Web上下文根的路径,因此它们不依赖于当前页面URL。
<c:set var="context" value="${pageContext.request.contextPath}" />
<script src="${context}/themes/js/jquery.js"></script>
另外,为什么不进行重定向而不是servlet过滤?或者可能有几个具有相同视图的控制器?