【发布时间】:2011-09-11 04:59:08
【问题描述】:
我试图在过滤器结束后包含一个 JSP 页面。我有以下代码:
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws ServletException, IOException {
try {
chain.doFilter(request, response);
}
finally {
HttpServletRequest httpRequest = (HttpServletRequest) request;
RequestDispatcher dispatcher = httpRequest.getRequestDispatcher("/WEB-INF/logging/logAppender.jsp");
dispatcher.include(request, response); // This does not work!
dispatcher.include(request, response); // The second time it works?
}
}
我认为非常简单的过滤器。但是,正如您在上面看到的,出于某种原因,第一次调用 include 并没有做任何事情。我只是对调试感到困惑和厌倦。我试过调用 .flushBuffer()、getWriter().flush()、各种 close() 还是不明白。有什么想法会有所帮助吗?
【问题讨论】:
标签: java jakarta-ee jetty servlet-filters