Ola Pessoal, estou com um problema com Filtros, vou explanar meu problema abaixo.
Bem eu tenho o layout da minha pagina inicial o qual contem img's e texto aonde e realizado o login.
O Servlet que realiza a criação da sessao do usuario funciona perfeitamente.
Agora quero usar um Filtro para fazer o controle de Sessao o qual era pra ser ativado para todas as requisições "/*", para caso o usuario queira entrar direto na pagina de menu do sistema, entao o filtro vai intervir verificar se ele tem sessao valida, se tiver deixa proseguir com o comandochain.doFilter(request, response);
out.println("<h2> Login obrigatório para acesso a esse recurso! </h2>");
req.getRequestDispatcher("login.jsp").include(request, response);
Codigo Inteiro do Filtro de Sessao a seguir:
System.out.println("Entrou no filtro de Sessao");
HttpServletRequest req = (HttpServletRequest) request;
HttpSession sessao = req.getSession();
if (sessao.getAttribute("login") != null
&& sessao.getAttribute("password") != null) {
//usuario tem sessão válida e pode acessar o recurso...
chain.doFilter(request, response);
} else {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<h2> Login obrigatório para acesso a esse recurso! </h2>");
req.getRequestDispatcher("login.jsp").include(request, response);
System.out.println("Entrou no filtro de Login");
HttpServletRequest req = (HttpServletRequest)request;
req.getRequestDispatcher("/login.jsp").
forward(request, response);
bom ai começa todo meu problema, pelo que entendo de filtros se uma requisição fosse feita direto para pagina login.jsp o primeiro filtro que deveria intervir seria o de Login, e como dentro do meu filtro de login eu mando ele dispachar direto para a login.jsp ele nao deveria passar pelo de sessao!? correto?
mas nao é isso que aconteçe, sempre que faço essa resquisição para login.jsp direto ele entra no filtro de login 1x e no de sessao 2x sendo que nao era pra entrar nenhuma, como vcs podem ver o erro na img a seguir :
[IMG]http://img607.imageshack.us/img607/5875/erroapachefilter.jpg[/IMG]
e alem de ele passar pelo filtro de sessao, ele redireciona para a login.jsp so que destruindo meu layout.
como e para ser:
[IMG]http://img804.imageshack.us/img804/5491/paginasemerro.jpg[/IMG]
Como fica apos passar pelo filtro :
[IMG]http://img96.imageshack.us/img96/6546/paginacomerro.jpg[/IMG]
Alguem pode me dar uma luz POR FAVOR?
Att Diego