Я нахожусь в середине переноса веб-приложения на основе Servlet 2.5 на Servlet 3.0 и столкнулся с этой проблемой, что я не знаю, как сжать эти разные сопоставления фильтров в одну аннотацию @WebFilter
для класса.
Фильтры:
<!-- Day is 12 hours, so if we update at night the new content will be fetched first thing in the morning -->
<filter>
<filter-name>CacheForDay</filter-name>
<filter-class>x.web.client.filter.CacheHeaderFilter</filter-class>
<init-param>
<param-name>CacheTime</param-name>
<param-value>43200</param-value>
</init-param>
</filter>
<filter>
<filter-name>CacheForWeek</filter-name>
<filter-class>x.web.client.filter.CacheHeaderFilter</filter-class>
<init-param>
<param-name>CacheTime</param-name>
<param-value>604800</param-value>
</init-param>
</filter>
<filter>
<filter-name>CacheForMonth</filter-name>
<filter-class>x.web.client.filter.CacheHeaderFilter</filter-class>
<init-param>
<param-name>CacheTime</param-name>
<param-value>18144000</param-value>
</init-param>
</filter>
<filter>
<filter-name>noCache</filter-name>
<filter-class>x.web.client.filter.CacheHeaderFilter</filter-class>
<init-param>
<param-name>CacheTime</param-name>
<param-value>0</param-value>
</init-param>
</filter>
Сопоставления фильтров:
<filter-mapping>
<filter-name>CacheForDay</filter-name>
<url-pattern>*.png</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheForDay</filter-name>
<url-pattern>*.gif</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheForDay</filter-name>
<url-pattern>*.js</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheForDay</filter-name>
<url-pattern>*.css</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheForMonth</filter-name>
<url-pattern>*.ico</url-pattern>
</filter-mapping>
Как я могу заменить их на @WebFilter
?