@Override
public void doFilter(ServletRequest requisicao, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) requisicao; // Cast
HttpServletResponse resp = (HttpServletResponse) response; // Cast
String uri = req.getRequestURI();// Pega a URI da requisição feita pelo usuário
String usuario = getUsuario(req);
System.out.println("Requisição usada : " + uri + " | Pelo usuário : " + usuario);
chain.doFilter(requisicao, response);//continua o fluxo, partindo para páginasWEB ou servlets
}
private String getUsuario(HttpServletRequest req) {
Usuario usuario = (Usuario) req.getSession().getAttribute("usuario.logado"); // pegando o usario da requisição e seus atributos
if(usuario == null)
return "<DESLOGADO>";
return usuario.getEmail();
}
apresenta esse erro :
HTTP Status 500 - java.lang.String cannot be cast to br.com.alura.gerenciador.Usuario
type Exception report
message java.lang.String cannot be cast to br.com.alura.gerenciador.Usuario
description The server encountered an internal error that prevented it from fulfilling this request.
exception
java.lang.ClassCastException: java.lang.String cannot be cast to br.com.alura.gerenciador.Usuario br.com.alura.gerenciador.web.FiltroDeAuditoria.getUsuario(FiltroDeAuditoria.java:43) br.com.alura.gerenciador.web.FiltroDeAuditoria.doFilter(FiltroDeAuditoria.java:35) note The full stack trace of the root cause is available in the Apache Tomcat/7.0.70 logs.
Apache Tomcat/7.0.70