Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Não aparece a uri da pasta gerenciador

Deve ser algum erro bobo!

No console, a plicação não retorna a uri da pasta gerenciador. Quando eu acesso a raiz não aparece nada, já quando eu acesso /busca, aparece a uri correta /gerenciador/busca.

Onde eu errei?

5 respostas

Fala aí, Thiago! Tudo certinho, cara? =)

Desculpe, acho que não entendi muito bem qual foi o problema... Você poderia refrasear, por favor? =)

E, como é possível que seja algum probleminha de código, você poderia colocar aqui o código que você estava escrevendo? =)

Fábio

Olá tudo bem. Posso. Na aula 04 o console exibe as requisições do usuário, assim, quando o user acessa é listada as uri s. Quando é chamada a classe servlet busca, aparece a uri correta (/gerenciador/busca), quando chama-se a servlet novaEmpresa também (/gerenciador/busca), mas quando eu acesso a raiz (/gerenciador) a mensagem não é exibida no console.

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;

@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;
        String uri = req.getRequestURI();
        String usuario = getUsuario(req);

        System.out.println("Usuario " + usuario + " acessando a URI " + uri);
        chain.doFilter(request, response);

    }

    private String getUsuario(HttpServletRequest req) {
        String usuario = "<deslogado>";
        Cookie cookie = new Cookies(req.getCookies()).buscaUsuarioLogado();
        if (cookie == null)
            return "<deslogado>";
        return cookie.getValue();
    }

    @Override
    public void init(FilterConfig arg0) throws ServletException {
    }

}

Thiago,

Infelizmente, (ainda) não consegui encontrar o erro no seu código... Você conseguiu resolvê-lo? =|

Fábio

solução!

Não consegui resolver não, mas não está me atrapalhando por enquanto. Mas obrigado por responder :)

Acho que estou com a mesma dúvida do Thiago. Comigo ocorre assim:

Para requisições conforme abaixo, o console exibe corretamente uma mensagem com a URI requisitada: http://localhost:8080/gerenciador/busca http://localhost:8080/gerenciador/novaEmpresa

Entretanto para a requisição http://localhost:8080/gerenciador/ o console não exibe nada.

Gostaria de uma explicação para esse comportamento. Abraços e obrigado.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software