В настоящее время я использую модифицированную версию Servlet фильтра, описанный здесь:Stripes 1.5: работает на Tomcat - лучший способ управления заголовками HTTP (cache-control)?
http://onjava.com/pub/a/onjava/2004/03/03/filters.html
И зацепил его до полосы диспетчера сервлета, как это:
<filter-mapping>
<filter-name>CacheControl</filter-name>
<servlet-name>StripesDispatcher</servlet-name>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
Который работает: но влияет на управление всем моим контентом - как я могу получить контроль над каждой базой JSP и/или за каждый метод actionBean?
Я собирался попытаться расширить «ForwardResolution» и ввести сюда, но, похоже, не в состоянии сделать это в своей собственной пакетной структуре? (Думаю, защищенный конструктор).
Две другие идеи, которые я имел (который я не особенно нравится звук) являются:
- Создание случайного ключа кэша на всех JSPs, которые называют в ActionBean (тем самым недействительности контроль кэша - в эффект).
- Передача в HTTP-параметре, который затем я могу проверить в CacheControl Filter относительно того, добавлять ли в заголовки управления кешем.
- Могу ли я добавить директиву в свои JSP? Каков рекомендуемый способ сделать это.
[как в стороне, кажется, что мой фильтр в настоящее время вызываются дважды для каждого вызова ... это побочный эффект, как я подключил фильтр к сервлету полосы может быть?]
Благодарим за это (+1) - оба хороших звучащих решения.На самом деле я узнал, что более поздние версии Stripes имеют некоторые функции управления кешем: я отвечу на свой вопрос с этой информацией. – monojohnny 2010-12-16 10:53:57