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

JavaEE Servlets

Apesar de antiga e sem uso, estou fazendo o exercício do código abaixo e está dando 404. Estou usando tomcat 9 e Java 10, pois não consegui rodar com versões mais recentes, só que o WebServlet não funciona para mim. Alguma sugestão?

Ps.: Vi que já foram abertos outros tópicos, só que antigos ou fechados, sobre este tema, mas nenhum apresentou a solução. Estou seguindo o estudo, mas fiquei curioso sobre como resolver este ponto. Imagino que seja problemas de configuração do ambiente. Imagino.

@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 a primeira servlet.");
        out.println("</body>");
        out.println("</html>");

        System.out.println("a servlet OiMundoServlet foi chamado");
    }
}
5 respostas

Oie Tarcisío, tudo bem contigo?

Com qual url você está tentando acessar esse servlet?

Você comentou sobre o @WebServlet não estar funcionando, já tentou fazer sem esse "urlPatterns"? Fazendo sem, ficaria assim:

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

Se essa alteração acima não resolver, peço que você envie um print ou copie e cole o erro que aparece no terminal do eclipse, dessa forma vou ter uma melhor noção do que pode estar acontecendo.

Fico no aguardo :)

Fala, Igor, tudo bem!

Fiz o teste que sugeriu, e nada. Estou achando que é algum problema de versão e/ou configuração, pois minha versão do Eclipse é nova e quando crio um Dynamic Web Project, as pastas são um pouco diferentes. o Web.xml está com uma sinalização de erro, por multiplos valores para os atributos.

Também acho que o Java não está compilando, pois o build está vazio. (?)

Seguem as imagens. Insira aqui a descrição dessa imagem para ajudar na acessibilidadeInsira aqui a descrição dessa imagem para ajudar na acessibilidade

Oie Tarcísio!

Quanto ao "web.xml", pelo que vejo no seu projeto, ele é desnecessário então para evitar possíveis dores de cabeça que ele pode causar com esses erros, recomendo que você apague todo o conteúdo dentro.

Quanto a versão do eclipse, ele pode ter mudado a disposição dos arquivos, mas pelo que vi você fez da maneira correta.

No console do seu eclipse não aparece nenhum erro quando você roda?

Fico no aguardo :)

solução!

Oi, Igor!

Resolvi o problema, mas foi uma pena que não sei exatamente como. Gostaria de ter identificado a real origem.

O procedimento que fiz foi limpar os projetos do workspace, e o servidor Tomcat também, e refiz desde o início. Nesta senguda vez, apesar de parecer que fiz o mesmo (mas certeza que devo ter errado antes), refiz o servidor e o projeto (Agora ele mostrou as classes do produto javax e não do jakarta - um forte indício do erro -) e tudo funcionou de primeira. Ufa!!!

Muito obrigado pelo apoio e se tiver uma opnião sobre isto, posta aqui! :) Valeu!

Oie Tarcísio!

Acredito que você estava tentando usar o tomcat 10 antes, certo? O tomcat 10 passou por algumas mudanças e as bibliotecas javax foram alteradas para jakarta, o que torna incompatível com as outras tecnologias usadas neste curso. Por isso, é necessário usar o tomcat 9.

Por isso, agora com você usando as bibliotecas "javax" o problema foi resolvido.

Continue assim e bons estudos!