您好我需要为单个页面禁用tomcat缓存。我已经通过了参考,
Control server side caching by page (Tomcat)? &安培; Java servlet how to disable caching of page
这里的解决方案是我需要这样做::
//设置标准HTTP / 1.1无缓存标头。 response.setHeader(“Cache-Control”,“private,no-store,no-cache,must-revalidate”);
//设置标准HTTP / 1.0无缓存标头。 response.setHeader(“Pragma”,“no-cache”);
但我没有任何特定页面的servlet类。上面的代码snipet我需要添加到一个servlet类我猜..我正确吗? 有没有办法从普通的java文件中禁用单个页面的tomcate缓存,?? ??
有关我的技术和框架的更多信息::
我们有一个名为tapestry(3)的框架。我们有一个名为ApplicationServlet的servlet类。它将.jwc文件(包含非静态部分)和html结合在一起,以创建一个新的html页面。 :)
答案 0 :(得分:0)
您可以通过servlet过滤器(仅匹配相关页面)设置HTTP标头来实现此目的:
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
try {
HttpServletResponse res = (HttpServletResponse) response;
// Set standard HTTP/1.1 no-cache headers.
// Set standard HTTP/1.0 no-cache header.
res.addHeader(...)
chain.doFilter(request, response);
}...
}