Назад | Перейти на главную страницу

Принудительное обновление клиентского кеша Java.

У меня есть обновленный сервер приложений Oracle. Он обслуживает пользователей java-файлом, который они запускают в своем браузере. После обновления браузеры пользователей по-прежнему извлекают старый файл Java из своего локального кеша и получают сообщение об ошибке. Если пользователь очищает свой кеш java, все будет работать правильно.

Должен быть способ сообщить клиентам, что им нужно получить новый файл java, а не использовать их локальную кэшированную версию.

Можете ли вы изменить ссылку, по которой пользователи нажимают, чтобы открыть файл Java? Если да, то есть несколько способов исправить это:

  • изменение appname.jar к appname.jar?version=20120124.
  • Добавить <param name="cache_option" value="no"> между <object> и </object>. (Это заставит клиентов перезагружать последнюю версию каждый раз, а не только один раз.)

Описан алгоритм кеширования Java-апплетов. Вот.

Попробуйте заставить Apache возвращать разумные Last-Modified заголовки. Если этого не происходит, это может нарушить алгоритм кеширования. Last-Modified должна быть более поздняя дата, чем предыдущий апплет.

Также проверьте, что тип MIME для файлов JAR из Apache: application/java-archive, поскольку отсутствие этого может испортить кеширование (но обычно это предотвращает их кеширование).

Существует также возможность внести изменения в файлы HTML, как описано.