3
respostas

HTTP 404 Servlet ---- "/oi" não é exibido

Bom dia!

Segui os passos do professor, com o código exatamente igual e ao acessar "http://localhost:8080/gerenciador/oi" dá o erro 404. evidencia: Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Quando tento acessar "http://localhost:8080/gerenciador/bem-vindo.html" tenho sucesso! evidencia: Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Código:

package br.com.alura.gerenciador.servlet;

import java.io.IOException; import java.io.PrintWriter;

import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;

//oi @WebServlet(urlPatterns = "/oi") public class OiMundoServlet extends HttpServlet {

@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws IOException {

    PrintWriter out = resp.getWriter();
    out.println("<html>");
    out.println("<body>");
    out.println("oi mundo, parabens vc escreveu o primeiro servlets.");
    out.println("</body>");
    out.println("</html>");

    System.out.println("o servlet OiMundoServlet foi chamado");
}

}

PS: Tentei com outra versão do tomcat e já até reinstalei a versão 9. Mas o erro persiste.

3 respostas

Boa tarde! Em qual pasta você criou o file? O código parece estar certinho, verifica a pasta. Qual erro aparece no console?

Olá Ricardo,

Estava com o mesmo problema e a solução foi simples.

  1. Pressione CTRL + 3;
  2. Digite: problems;
  3. Clique em Problems(General)

Será inserido uma aba igual a essa:

Veja se aparece algum problema listado, no meu caso estava aparecendo a seguinte mensagem: Description Resource Path Location Type The project was not built due to "release 16 is not found in the system...

O que eu fiz foi baixar o jdk16 e alterar o build patch clicando com o botao direito em cima de gerenciador.

Espero que resolva para você também!

Estava com o mesmo problema devido a forma que o Eclipse criou as pastas

Ele criou automaticamente as pastas src>main>java

Para deixar igual ao do instrutor eu criei o pacote dentro da pasta src (ignorando as pastas main e java)

Para corrigir o problema copiei as pastas br>com>alura>gerenciador>servlet para dentro da pasta src>main>java

Insira aqui a descrição dessa imagem para ajudar na acessibilidadeEspero ter ajudado