Erro JSTL Exercício 7.7 da FJ21

2 respostas
luiz1723

Opa pessoal tudo bom? :)
Desculpe se eu fizer algo errado, já usei bastante o fórum mas essa é minha primeira postagem hehe.

Seguinte, estou fazendo o primeiro exercício da apostila F21 Caelum e não está funcionando de jeito nenhum.
Segue o código da JSP:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"  
    pageEncoding="ISO-8859-1"%>  
      
  
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>  
  
<html>  
   <head>  
      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">  
       <title>Primeira Página JSP Utilizando JSTL</title>  
   </head>  
   <body>  
         
         <!-- cria o DAO -->  
         <jsp:useBean id="dao" class="teste.ContatoDAO"/>  
          
        <table>  
            <!-- percorre contatos montando as linhas da tabela -->  
            <c:forEach var="contato" items="${dao.lista}">  
                <tr>  
                   <td>${contato.nome}</td>  
                   <td>${contato.email}</td>  
                   <td>${contato.endereco}</td>  
  				   <td>${contato.dataNascimento.time}</td>  
                </tr>  
            </c:forEach>  
        </table>             
         
   </body>  
</html>

E o código do método lista da classe ContatoDAO

public List<Contatos> getLista(){
		
		try{
			
			List<Contatos> contatos = new ArrayList<Contatos>();
			PreparedStatement comando = this.connection.prepareStatement("select * from contatos");
			ResultSet resultado = comando.executeQuery();
			
			while(resultado.next())
			{
				Contatos contato = new Contatos();
				
				contato.setId(resultado.getLong("id"));
				contato.setNome(resultado.getString("nome"));
				contato.setEmail(resultado.getString("email"));
				contato.setEndereco(resultado.getString("endereco"));
				
				Calendar data = Calendar.getInstance();
				data.setTime(resultado.getDate("dataNascimento"));
				contato.setDataNascimento(data);
				
				contatos.add(contato);
			}
										
			resultado.close();
			comando.close();
			
			return contatos;
			
		}catch(SQLException e){
			
			throw new RuntimeException(e);
		}
		
	}
e gera o seguinte erro sempre que eu tento acessar pelo navegador:
HTTP Status 500 -

exception

javax.servlet.ServletException: java.lang.NoClassDefFoundError: javax/servlet/jsp/tagext/TagLibraryValidator
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:268)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause

        java.lang.NoClassDefFoundError: javax/servlet/jsp/tagext/TagLibraryValidator
	java.lang.ClassLoader.defineClass1(Native Method)
	java.lang.ClassLoader.defineClassCond(Unknown Source)
	java.lang.ClassLoader.defineClass(Unknown Source)
	java.security.SecureClassLoader.defineClass(Unknown Source)
	java.net.URLClassLoader.defineClass(Unknown Source)
	java.net.URLClassLoader.access$000(Unknown Source)
	java.net.URLClassLoader$1.run(Unknown Source)
	java.security.AccessController.doPrivileged(Native Method)
	java.net.URLClassLoader.findClass(Unknown Source)
	sun.misc.Launcher$ExtClassLoader.findClass(Unknown Source)
	java.lang.ClassLoader.loadClass(Unknown Source)
	java.lang.ClassLoader.loadClass(Unknown Source)
	java.lang.ClassLoader.defineClass1(Native Method)
	java.lang.ClassLoader.defineClassCond(Unknown Source)
	java.lang.ClassLoader.defineClass(Unknown Source)
	java.security.SecureClassLoader.defineClass(Unknown Source)
	java.net.URLClassLoader.defineClass(Unknown Source)
	java.net.URLClassLoader.access$000(Unknown Source)
	java.net.URLClassLoader$1.run(Unknown Source)
	java.security.AccessController.doPrivileged(Native Method)
	java.net.URLClassLoader.findClass(Unknown Source)
	sun.misc.Launcher$ExtClassLoader.findClass(Unknown Source)
	java.lang.ClassLoader.loadClass(Unknown Source)
	java.lang.ClassLoader.loadClass(Unknown Source)
	sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
	java.lang.ClassLoader.loadClass(Unknown Source)
	org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1595)
	org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
	org.apache.jasper.compiler.TagLibraryInfoImpl.createValidator(TagLibraryInfoImpl.java:666)
	org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD(TagLibraryInfoImpl.java:249)
	org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:181)
	org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:386)
	org.apache.jasper.compiler.Parser.parseDirective(Parser.java:450)
	org.apache.jasper.compiler.Parser.parseElements(Parser.java:1397)
	org.apache.jasper.compiler.Parser.parse(Parser.java:130)
	org.apache.jasper.compiler.ParserController.doParse(ParserController.java:255)
	org.apache.jasper.compiler.ParserController.parse(ParserController.java:103)
	org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:185)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:334)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:321)
	org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause

java.lang.ClassNotFoundException: javax.servlet.jsp.tagext.TagLibraryValidator
	java.net.URLClassLoader$1.run(Unknown Source)
	java.security.AccessController.doPrivileged(Native Method)
	java.net.URLClassLoader.findClass(Unknown Source)
	sun.misc.Launcher$ExtClassLoader.findClass(Unknown Source)
	java.lang.ClassLoader.loadClass(Unknown Source)
	java.lang.ClassLoader.loadClass(Unknown Source)
	java.lang.ClassLoader.defineClass1(Native Method)
	java.lang.ClassLoader.defineClassCond(Unknown Source)
	java.lang.ClassLoader.defineClass(Unknown Source)
	java.security.SecureClassLoader.defineClass(Unknown Source)
	java.net.URLClassLoader.defineClass(Unknown Source)
	java.net.URLClassLoader.access$000(Unknown Source)
	java.net.URLClassLoader$1.run(Unknown Source)
	java.security.AccessController.doPrivileged(Native Method)
	java.net.URLClassLoader.findClass(Unknown Source)
	sun.misc.Launcher$ExtClassLoader.findClass(Unknown Source)
	java.lang.ClassLoader.loadClass(Unknown Source)
	java.lang.ClassLoader.loadClass(Unknown Source)
	java.lang.ClassLoader.defineClass1(Native Method)
	java.lang.ClassLoader.defineClassCond(Unknown Source)
	java.lang.ClassLoader.defineClass(Unknown Source)
	java.security.SecureClassLoader.defineClass(Unknown Source)
	java.net.URLClassLoader.defineClass(Unknown Source)
	java.net.URLClassLoader.access$000(Unknown Source)
	java.net.URLClassLoader$1.run(Unknown Source)
	java.security.AccessController.doPrivileged(Native Method)
	java.net.URLClassLoader.findClass(Unknown Source)
	sun.misc.Launcher$ExtClassLoader.findClass(Unknown Source)
	java.lang.ClassLoader.loadClass(Unknown Source)
	java.lang.ClassLoader.loadClass(Unknown Source)
	sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
	java.lang.ClassLoader.loadClass(Unknown Source)
	org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1595)
	org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
	org.apache.jasper.compiler.TagLibraryInfoImpl.createValidator(TagLibraryInfoImpl.java:666)
	org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD(TagLibraryInfoImpl.java:249)
	org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:181)
	org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:386)
	org.apache.jasper.compiler.Parser.parseDirective(Parser.java:450)
	org.apache.jasper.compiler.Parser.parseElements(Parser.java:1397)
	org.apache.jasper.compiler.Parser.parse(Parser.java:130)
	org.apache.jasper.compiler.ParserController.doParse(ParserController.java:255)
	org.apache.jasper.compiler.ParserController.parse(ParserController.java:103)
	org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:185)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:334)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:321)
	org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.35 logs.

Obrigado por sua atenção e desde já e caso não tenha feito o post correto peço que me avisem.

Fiquem com Deus.

2 Respostas

gilmaslima

vc adicionou a lib do jstl na aplicação?

luiz1723

gilmaslima se a lib da jstl são as: jstl.api-1.2.jar e jstl.impl-1.2.jar então adicionei sim nas pasta WebContent/WEB-INF/lib

Não sei se tem importância mas estou usando a IDE Eclipse JEE.

Obrigado pela atenção cara, fica com Deus.

Criado 27 de janeiro de 2012
Ultima resposta 27 de jan. de 2012
Respostas 2
Participantes 2