3
respostas

Erro TagLibraryValidator

no meu ainda esta dando esse erro... ja corrigi a versão do tomcat, a jre e etc. e não consigo seguir adiante disso como prosseguir ?

`

abr. 11, 2023 11:27:26 AM org.apache.catalina.core.StandardWrapperValve invoke GRAVE: Servlet.service() for servlet [br.com.alura.gerenciador.servlet.ListaEmpresasServlet] in context with path [/gerenciador] threw exception [java.lang.NoClassDefFoundError: jakarta/servlet/jsp/tagext/TagLibraryValidator] with root cause java.lang.ClassNotFoundException: jakarta.servlet.jsp.tagext.TagLibraryValidator at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1412) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1220) at java.base/java.lang.ClassLoader.defineClass1(Native Method) at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1013) at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150) at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2470) at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:875) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1376) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1220) at java.base/java.lang.ClassLoader.defineClass1(Native Method) at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1013) at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150) at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2470) at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:875) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1376) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1220) at org.apache.jasper.compiler.TagLibraryInfoImpl.createValidator(TagLibraryInfoImpl.java:355) at org.apache.jasper.compiler.TagLibraryInfoImpl.(TagLibraryInfoImpl.java:195) at org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:435) at org.apache.jasper.compiler.Parser.parseDirective(Parser.java:493) at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1450) at org.apache.jasper.compiler.Parser.parse(Parser.java:144) at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:245) at org.apache.jasper.compiler.ParserController.parse(ParserController.java:106) at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:207) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:392) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:368) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:352) at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:603) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:399) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:379) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:327) at javax.servlet.http.HttpServlet.service(HttpServlet.java:596) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:661) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:425) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:357) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:294) at br.com.alura.gerenciador.servlet.ListaEmpresasServlet.service(ListaEmpresasServlet.java:26) at javax.servlet.http.HttpServlet.service(HttpServlet.java:596) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)

3 respostas

Olá Lucas, tudo bem? Esse erro geralmente ocorre quando há alguma incompatibilidade de versões entre as bibliotecas utilizadas em seu projeto.

Dentro da pasta /gerenciador/WebContent/WEB-INF/lib/ tente adicionar a lib do jakarta.servlet.jsp.jstl, você pode baixar ela pelo link https://mvnrepository.com/artifact/jakarta.servlet.jsp.jstl/jakarta.servlet.jsp.jstl-api/2.0.0 clicando em "Files jar (44 KB)"

Bom dia, to usando o intelliJ, e ainda aparece essa msg de erro.

HTTP Status 500 – Internal Server Error Type Exception Report

Message A uri absoluta [http://java.sun.com/jstl/core] não pode ser resolvida pelo web.xml ou pelos arquivos jar instalados com esta aplicação

Description The server encountered an unexpected condition that prevented it from fulfilling the request.

Exception

org.apache.jasper.JasperException: A uri absoluta [http://java.sun.com/jstl/core] não pode ser resolvida pelo web.xml ou pelos arquivos jar instalados com esta aplicação org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:54) org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:294) org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:81) org.apache.jasper.compiler.TagLibraryInfoImpl.generateTldResourcePath(TagLibraryInfoImpl.java:251) org.apache.jasper.compiler.TagLibraryInfoImpl.(TagLibraryInfoImpl.java:122) org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:435) org.apache.jasper.compiler.Parser.parseDirective(Parser.java:493) org.apache.jasper.compiler.Parser.parseElements(Parser.java:1450) org.apache.jasper.compiler.Parser.parse(Parser.java:144) org.apache.jasper.compiler.ParserController.doParse(ParserController.java:245) org.apache.jasper.compiler.ParserController.parse(ParserController.java:106) org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:207) org.apache.jasper.compiler.Compiler.compile(Compiler.java:392) org.apache.jasper.compiler.Compiler.compile(Compiler.java:368) org.apache.jasper.compiler.Compiler.compile(Compiler.java:352) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:603) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:399) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:379) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:327) javax.servlet.http.HttpServlet.service(HttpServlet.java:596) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) Note A pilha de erros completa da causa principal está disponível nos logs do servidor.

Apache Tomcat/9.0.73

Olá Lucas,

O erro que você está enfrentando pode estar relacionado a uma incompatibilidade de versões do JSTL (JavaServer Pages Standard Tag Library). A mensagem de erro indica que o URI absoluto [http://java.sun.com/jstl/core] não pode ser resolvido pelo web.xml ou pelos arquivos JAR instalados com esta aplicação.

Para resolver esse problema, tente adicionar a biblioteca JSTL ao seu projeto. Você pode baixar a biblioteca JSTL de um dos seguintes links:

https://repo1.maven.org/maven2/javax/servlet/jstl/1.2/jstl-1.2.jar https://mvnrepository.com/artifact/javax.servlet.jsp.jstl/jstl/1.2 Coloque o arquivo JAR baixado na pasta /WEB-INF/lib do seu projeto e, em seguida, adicione o seguinte trecho ao seu web.xml:

<taglib>
    <taglib-uri>http://java.sun.com/jstl/core</taglib-uri>
    <taglib-location>/WEB-INF/lib/jstl-1.2.jar</taglib-location>
</taglib>

Verifique se a versão da biblioteca JSTL é compatível com a versão do servlet container que você está usando.

Espero que isso ajude a resolver o seu problema. Se você ainda tiver dificuldades, tente compartilhar mais informações sobre o seu ambiente de desenvolvimento e as versões das bibliotecas que está usando.

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