Мы только что обнаружили, что каждый раз, когда мы перезапускаем JBoss, все наши клиенты Java Web Start повторно загружают все свои банки вместо повторного использования кэшированных банок, даже если наше приложение не изменилось.
Из того, что я видел в Интернете, Java Web Start выполняет HTTP HEAD, чтобы решить, стоит ли загружать банку. Поэтому я запускал HTTP HEAD на всех баночках нашего приложения и обнаружил, что после перезапуска JBoss измененное время всех банок изменилось!
Почему это и как я могу это исправить? Банки внутри моих архивов приложений не изменились вообще. Насколько я могу судить, JBoss использует время запуска или время развертывания в качестве измененного времени. Это полностью отключит возможность Java Web Start использовать кешированные банки из предыдущих прогонов, если я правильно понимаю.
Мы используем JBoss 6, если это проблема. Раньше мы использовали JBoss 4. Я хочу проверить, была ли у нас проблема с JBoss 4, но теперь у нас так много зависимостей от нового JBoss, что для выполнения этого теста потребуется какая-то работа.