devxlogo

Client Caching of Java Server Pages

Client Caching of Java Server Pages

Question:
When I redirect a request from a Servlet to a JSP, the browsercaches the JSP and won’t display an updated page without reloading.How do I prevent the page from being cached?

Answer:
The HTTP/1.1 specification specifies a header called Cache-Control,that can be used to alter the caching behavior of clients andintermediate proxy servers. Setting the value of this header to”no-cache” causes an HTTP response not to be stored by any interveningcaches. However, HTTP/1.0 clients may not recognize the Cache-Controlheader. For these clients, adding a Pragma header field with thevalue “no-cache” will serve the same purpose, but not all HTTP/1.0clients will necessarily recognize this header. To account forHTTP/1.0 clients that don’t recognize a “Pragma: no-cache” header, youcan set the expiration time of the response to a past date using theExpires date header field. Here’s an example of how to do this withina JSP page using the response variable, which is an instance ofHttpServletResponse.

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 anyoutput, otherwise the headers may not take effect.

See also  Why ChatGPT Is So Important Today
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist