Quando eu ativo meu servidor após implementar o filtro como instruído nesta aula, a primeira página "gerenciador" abre normalmente na primeira vez, mas após isso todas as páginas que eu tento abrir acabam em erro. Olhando nos logs, eu achei o seguinte erro na inicialização do servidor:
"java.lang.ClassCastException: br.com.alura.gerenciador.web.FiltroDeAuditoria cannot be cast to javax.servlet.Filter"
Mas eu não entendo porque ocorre este erro já que eu fiz o override de todos os métodos pedidos. Acho que talvez, como houve mudanças a interface HTTP filtro desde que a aula foi feita, tenha algum detalhe que tenha que ser feito que ela não mencione. Neste caso, gostaria que alguém me esclarecesse este detalhe.
A seguir vou postar a minha classe filtro integralmente:
package br.com.alura.gerenciador.web;
import java.io.IOException;
import javax.servlet.annotation.WebFilter;
import com.sun.net.httpserver.Filter;
import com.sun.net.httpserver.HttpExchange;
@WebFilter(urlPatterns="/*")
public class FiltroDeAuditoria extends Filter {
@Override
public String description() {
// TODO Auto-generated method stub
return null;
}
@Override
public void doFilter(HttpExchange exchange, Chain chain) throws IOException {
HttpExchange ex = (HttpExchange) exchange;
System.out.println("Usuario acessando a URI " + ex.getRequestURI());
chain.doFilter(exchange);
}
}