Closed
Description
Brian Clozel opened SPR-11792 and commented
This is an umbrella issue for several improvements on HTTP caching strategies.
Those improvements include:
- Refactor WebContentGenerator to decouple HTTP Headers from each other and enable flexible use of
last-modified
,must-revalidate
,Cache-Control: public/private
,no-transform
- Decoupling HTTP caching features from WebContentGenerator and explore alternative solutions
- Provide controller method-level alternative to WebContentInterceptor
- Enable gzip compression in DispatcherServlet
References: Mark Nottingham's cache docs and RFC2616
Sub-tasks:
- HTTP caching should be decoupled from WebContentGenerator [SPR-2779] #7466 HTTP caching should be decoupled from WebContentGenerator
- Add support for no-transform cache control header [SPR-6834] #11500 Add support for no-transform cache control header
- Add support for public/private Cache-Control HTTP header [SPR-7129] #11789 Add support for public/private Cache-Control HTTP header
- Provide controller method level alternative to WebContentInterceptor [SPR-8550] #13194 Provide controller method level alternative to WebContentInterceptor
- Use same pragma settings in WebContentGenerator as in AbstractView [SPR-9543] #14177 Use same pragma settings in WebContentGenerator as in AbstractView
- Allow must-revalidate to be suppressed in ResourceHttpRequestHandler [SPR-10464] #15097 Allow must-revalidate to be suppressed in ResourceHttpRequestHandler
- ServletWebRequest can't validate Etag and Last-Modified together. [SPR-11324] #15948 ServletWebRequest can't validate Etag and Last-Modified together.
- gzip compression in DispatcherServlet [SPR-11714] #16336 gzip compression in DispatcherServlet
Issue Links:
- WebContentGenerator not backwards compatible [SPR-13207] #17799 WebContentGenerator not backwards compatible
- Reset Pragma header in WebContentGenerator when caching resources [SPR-13252] #17843 Reset Pragma header in WebContentGenerator when caching resources
- Reset Expires header in WebContentGenerator when caching resources [SPR-14053] #18625 Reset Expires header in WebContentGenerator when caching resources
- Document changes about HTTP cache header defaults in migration docs [SPR-13253] #17844 Document changes about HTTP cache header defaults in migration docs
- HTTP cache and conditional requests support in RestTemplate [SPR-5821] #10491 HTTP cache and conditional requests support in RestTemplate
- ResourceHttpRequestHandler serves all files with must-revalidate cache header, should not do that when using a content versioning strategy [SPR-12562] #16988 ResourceHttpRequestHandler serves all files with must-revalidate cache header, should not do that when using a content versioning strategy
6 votes, 16 watchers