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

Problemas com os pacotes javax vs jakarta

Estou tendo problemas com a importação de pacotes realizada pelo Eclipse. Na primeira Servlet que eu criei (NovaEmpresaServlet), a IDE importou classes do pacote jakarta.servlet automaticamente e tudo funcionou corretamente. Mas a partir da Servlet listaEmpresas, o Eclipse começou a importar classes do pacote javax.servlet não sei porque e o compilador começou a indicar erro "The import javax.servlet cannot be resolved". Editei na mão, trocando javax por jakarta e deu certo, embora eu tenha visto que nos vídeos o professor importava javax. Até aí tudo bem, embora esperasse não ter que fazer isto sempre. Acontece que, quando fui criar a primeira JSP, "novaEmpresaCriada", o compilador não reconhece a diretiva <% e mostra o erro "The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path". Não entendo mais que bibliotecas estou usando, se javax ou jakarta, nem sei mais como resolver o problema. Agradeço a ajuda.

3 respostas

Exatamente o mesmo problema aqui

solução!

Tive problema similar por aqui, e pelo menos no meu caso vi que isso tem a ver com uma alteração de nome "javax" para "jakarta" que ocorre a partir do Tomcat 10, que era a versão que eu tinha baixado.

tl;dr: apaguei o Tomcat 10 e refiz o procedimento utilizando o Tomcat 9, e tudo funciona conforme está no curso.

História completa: No inicio, apenas alterar todos os nomes de javax para jakarta pareceu funcionar, porém a partir do momento que passa a ser abordado o tópico JSTL, o uso da library jstl-1.2.jar utiliza dependências "javax", que começam a quebrar o código. Tentei obter library mais atualizada (Jakarta JSTL 2.0), e até funcionou por algum tempo, mas curiosamente somente após também adicionar a library no build path. Porém, no dia seguinte, quando liguei novamente o PC, tudo parou de funcionar, com os mesmos erros de antes. Isso sem contar diversos outros erros e alertas que o Eclipse já informava nos JSPs, e que na verdade não impediam o código de rodar corretamente no Tomcat 10, antes do JSTL. Após mudar para a versão 9, tudo passou a funcionar normalmente.

Perfeito, Renato, funcionou. Valeu!