При развертывании GWT-приложения важно избегать использования прокси-серверов и браузеров для кэширования .nocache.js-файлов, сгенерированных GWT. Одним из решений является реализация фильтра сервлетов, который добавляет необходимые заголовки HTTP, которые управляют поведением кэширования.
Вот такой фильтр: http://seewah.blogspot.com/2009/02/gwt-tips-2-nocachejs-getting-cached-in.html
Заголовки в этом примере:
Date: Wed, 24 Nov 2010 20:32:43 GMT
Expires: Wed, 01 Nov 2000 00:00:00 GMT
Pragma: no-cache
Cache-Control: no-cache, no-store, must-revalidate
Date
должно быть установлено на время запроса.
Expires
лучше всего установить на какое-то время в прошлом, это заставляет всех считать контент уже устаревшим.
Pragma
- это тег, который был заменен Cache-Control
, но его не помешает.
Cache-Control
no-cache
означает, что браузер или прокси-сервер должен повторно проверить кэшированную копию перед ее отправкой клиенту. no-store
означает, что никто никогда не хранит кэшированную копию (что делает no-cache
избыточным). must-revalidate
говорит, что браузер / прокси должен подчиняться информации о свежести и повторной проверке, также избыточной с no-store
.