Quando eu rodo meu servidor está retornando a seguinte mensagem:
HTTP Status 500 - br.com.alura.gerenciador.dao.UsuarioDAO cannot be cast to br.com.alura.gerenciador.Usuario
exception:
java.lang.ClassCastException: br.com.alura.gerenciador.dao.UsuarioDAO cannot be cast to br.com.alura.gerenciador.Usuario
br.com.alura.gerenciador.web.FiltroDeAuditoria.doFilter(FiltroDeAuditoria.java:49)
Logo eu fui na pagina de FiltroDe Auditoria e não consigo encontrar o erro. Até mesmo peguei uma parte do código do professor pra ver estava fazendo algo de errado,porém esta dando o mesmo erro.
Veja o codigo:
FiltroDeAuditoria:
package br.com.alura.gerenciador.web;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import br.com.alura.gerenciador.Usuario;
@WebFilter(urlPatterns="/*")
public class FiltroDeAuditoria implements Filter {
@Override
public void destroy() {
}
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) request;
// USANDO SESSÃO
HttpSession session = req.getSession();
Usuario usuarioLogado = (Usuario) session.getAttribute("usuario.logado");
String usuario = "<deslogado>";
if(usuarioLogado != null){//Se o retorno for diferente de nulo pegue o valor e setta no print
usuario = usuarioLogado.getEmail();
}
System.out.print("O usuário:"+usuario+" está acessando a URI"+req.getRequestURI());
chain.doFilter(request, response);
}
@Override
public void init(FilterConfig config) throws ServletException {
}