Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Expertise: Beginner
Jul 6, 2000



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Client Caching of Java Server Pages

When I redirect a request from a Servlet to a JSP, the browser caches the JSP and won't display an updated page without reloading. How do I prevent the page from being cached?

The HTTP/1.1 specification specifies a header called Cache-Control, that can be used to alter the caching behavior of clients and intermediate proxy servers. Setting the value of this header to "no-cache" causes an HTTP response not to be stored by any intervening caches. However, HTTP/1.0 clients may not recognize the Cache-Control header. For these clients, adding a Pragma header field with the value "no-cache" will serve the same purpose, but not all HTTP/1.0 clients will necessarily recognize this header. To account for HTTP/1.0 clients that don't recognize a "Pragma: no-cache" header, you can set the expiration time of the response to a past date using the Expires date header field. Here's an example of how to do this within a JSP page using the response variable, which is an instance of HttpServletResponse.

response.setHeader("Cache-Control", "no-cache");
response.setHeader("Pragma", "no-cache");
response.setDateHeader("Expires", 0);
Make sure to set these headers before your JSP page produces any output, otherwise the headers may not take effect.
DevX Pro
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date