Вот рабочий файл web.xml:
30
rememberMeCookieFilter
be.example.fun.jsp.filters.RememberMeCookieFilter
mustBeSignedInFilter
be.example.fun.jsp.filters.MustBeSignedInFilter
rememberMeCookieFilter
/*
mustBeSignedInFilter
/private/*
Когда я удаляю элементы
и использую вместо них следующие аннотации:
@WebFilter(filterName="rememberMeCookieFilter")
public class RememberMeCookieFilter implements Filter
@WebFilter(filterName="mustBeSignedInFilter")
public class MustBeSignedInFilter implements Filter
Затем Tomcat 7.0.14 выдает следующую ошибку:
java.lang.IllegalArgumentException: Filter mapping must specify either a or a
at org.apache.catalina.core.StandardContext.validateFilterMap(StandardContext.java:2956)
at org.apache.catalina.core.StandardContext.addFilterMap(StandardContext.java:2915)
at org.apache.catalina.deploy.WebXml.configureContext(WebXml.java:1180)
at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1270)
...
Я последовал ответу на этот вопрос, но это не работает для меня.
Вот зависимости моего веб-приложения:
org.slf4j
slf4j-api
1.6.4
ch.qos.logback
logback-core
1.0.0
ch.qos.logback
logback-classic
1.0.0
org.codehaus.groovy
groovy
1.8.3
javax.servlet
servlet-api
3.0
jar
provided
junit
junit
4.8.2
test
РЕДАКТИРОВАТЬ: Проблема возникает только при использовании Tomcat (7.0.14). Стеклянная рыбка в порядке.