Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Как избавиться от кеширования статики в Tomcat


Автор: m0zg 13.1.2012, 12:29
Многие добавляют версионность к файлам типа .js?123123123 или .css?12341234. А как бы сделать так, чтоб при сборке проекта (Maven) автоматически записывать число (версию или время последней модификации) в класс, чтоб я потом его в ссылку подставил?

Автор: Stolzen 13.1.2012, 12:42
Можно сделать файл с properties, и заставить maven при билде подставлять нужные значения в него. 

Автор: m0zg 13.1.2012, 12:49
Да, но проблема в том, что я не знаю как с помощью мавена такие вещи сделать smile.

Автор: Stolzen 13.1.2012, 12:58
В maven, увы, это довольно запутанно - скорее всего, придется писать либо анттаск, либо свой плагин.
В принципе материалов в сети хватает. Начать можно, например, с http://0agr.ru/blog/2011/10/17/generaciya-fajlov-s-pomoshhyu-maven-i-anttask/ 

Автор: vogdb 13.1.2012, 13:33
а можно использовать jawr и не париться =)

Автор: Ares4322 13.1.2012, 14:38
Есть еще wro4j http://code.google.com/p/wro4j/
Попробовал - хорошая штука.
Для себя я сам написал anttask, который вычисляет хеши файлов, потом меняет имена файлов,потом ищет старые имена в других файлах и добавляет к ним этот хеш. 
Ну короче, как в вашей задаче )

Автор: pixelua 19.1.2012, 00:51
Цитата(Ares4322 @ 13.1.2012,  14:38)
Есть еще wro4j http://code.google.com/p/wro4j/
Попробовал - хорошая штука.
Для себя я сам написал anttask, который вычисляет хеши файлов, потом меняет имена файлов,потом ищет старые имена в других файлах и добавляет к ним этот хеш. 
Ну короче, как в вашей задаче )

Спасибо!!!! мне помогло

Автор: Ares4322 19.1.2012, 08:54
Всегда пожалуйста)

Автор: m0zg 31.1.2012, 12:08
Цитата(Ares4322 @ 13.1.2012,  14:38)
Есть еще wro4j http://code.google.com/p/wro4j/
Попробовал - хорошая штука.
Для себя я сам написал anttask, который вычисляет хеши файлов, потом меняет имена файлов,потом ищет старые имена в других файлах и добавляет к ним этот хеш. 
Ну короче, как в вашей задаче )

А что, со Spring эта библиотека не дружит? Не могу найти в документации.

P.S. Кстати, я таки избавился от кеширования статики весьма просто. Надо было сразу доки по Spring на эту темы посмотреть:

Код

<mvc:resources mapping="/resources/**" location="/resources/" cache-period="0" />


Добавил последний атрибут и всё стало Ок smile.

Но вот wro4j меня заинтересовал, только не могу найти можно ли его как-то конфигурировать через файлы конфигурации спринга.

Автор: Ares4322 31.1.2012, 12:35
http://code.google.com/p/wro4j/wiki/ConfigureWro4jViaSpring - для Спринга.
А что это за атрибут и почему из-за него не будет кешироваться?
Если этот атрибут устанавливает мета-тег content="no-cache" на отдаваемой странице, то этот тег не во всех браузерах работает. Насколько я помню, то в Опере не работает.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)