Iniciante em JSP[ problema impossivel de resolver ]

ae pessoal começei hj no estuda de java para web… na apostila q estou segindo a da CAELUM f21 tem um exercicio que eu copio e nao da certo gostaria de saber pq!!!

[code]
<%@ taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c” %>
<html>

<jsp:useBean id=“dao” class=“com.cpaconsulting.dao.DAOagenda”/>

<%
// …
List usuarios = dao.getLista();
for (int i = 0; i < usuarios.size(); i++ ) {
Usuario usuario = (Usuario) usuarios.get(i);
%>

  • <%=usuario.getNome()%>, <%=usuario.getEmail()%>: <%=usuario.getEndereco()%>
  • <% } %>

    </html>[/code]

    o programa tah ai!!! oq que esta errado?!

    Poste aqui a mensagem de erro :slight_smile:

    o erro eh esse:

    [code]
    HTTP Status 500 -


    type Exception report

    message

    description The server encountered an internal error () that prevented it from fulfilling this request.

    exception

    org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

    root cause

    org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application
    org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:50)
    org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
    org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:114)
    org.apache.jasper.compiler.TagLibraryInfoImpl.generateTLDLocation(TagLibraryInfoImpl.java:316)
    org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:147)
    org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:423)
    org.apache.jasper.compiler.Parser.parseDirective(Parser.java:492)
    org.apache.jasper.compiler.Parser.parseElements(Parser.java:1552)
    org.apache.jasper.compiler.Parser.parse(Parser.java:126)
    org.apache.jasper.compiler.ParserController.doParse(ParserController.java:211)
    org.apache.jasper.compiler.ParserController.parse(ParserController.java:100)
    org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:155)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:295)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:276)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:264)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:563)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:303)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

    note The full stack trace of the root cause is available in the Apache Tomcat/5.5.17 logs.

    --------------------------------------------------------------------------------[/code]

    nao sera problema dos arquivos .jar do JSTL ?? eu tenho os 2… eu coloquei eles no eclipse no class path do projeto … esta certo???

    Cara, de uma olhada se ele esta np lib da sua aplicação e verifique também se os arquivos .tld estão abaixo do diretório “WEB-INF” da tua aplicação.

    Abraço

    Ricardo Cabral

    .tld ??? nun entendi… eu tenho 2 arquivos jstl.jar standard.jar os 2 estao no meu Workspace do eclipse dentro da pasta do projeto e dentro da pasta WEB-INF/lib

    e meu web.xml esta assim

    
    &lt?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot;?&gt
    &lt;web-app xmlns="http://java.sun.com/xml/ns/j2ee" version="2.4"&gt;
    
    &lt;taglib&gt;
    &lt;taglib-uri&gt;http://java.sun.com/jsp/jstl/core&lt;/taglib-uri&gt;
    &lt;taglib-location&gt;/WEB-INF/lib/c.tld&lt;/taglib-location&gt;
    &lt;/taglib&gt;
    
    
    
    &lt;display-name&gt;
    	Aplicacao web simples
    &lt;/display-name&gt;
    
    &lt;/web-app&gt;

    ae pessoal nun consigo resolver isso que raiva =/ ngm tem nem idea do possivel erro!??!

    veja no configurar build path do eclipse se os .jar estão mesmo no classpath da aplicação. qq coisa clica com o botão direito nesses arquivos dentro do eclipse e veja se é possível adicioná-los ao classpath da aplicação.

    cara se não me engano na versão 2.4 você não precisa declarar no WEB-INF o tld.

    retira ele de lá pra ver se funciona

    Ricardo Cabral

    pelo q vi no seu jsp vc não colocou a diretiva page. coloque-a em cima da &lt@taglib pra ver se funciona:

    &lt;%@ page language="java"  contentType="text/html; charset=ISO-8859-1"
        pageEncoding="ISO-8859-1"%&gt;

    ae pessoal a situação é o seguinte:

    web.xml

    [code]
    &lt?xml version=“1.0” encoding=“ISO-8859-1”?&gt
    <web-app xmlns=“http://java.sun.com/xml/ns/j2ee” version=“2.4”>
    <display-name>
    Aplicacao web simples
    </display-name>

    </web-app>[/code]

    lista-elegante.jsp[code]
    <%@ taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c” %>
    <html>

    <jsp:useBean id=“dao” class=“com.cpaconsulting.dao.DAOagenda”/>

    <%

    List usuarios = dao.getList();
    for (int i = 0; i < usuarios.size(); i++ ) {
    Usuario usuario = (Usuario) usuarios.get(i);
    %>

  • <%=usuario.getNome()%>, <%=usuario.getEmail()%>: <%=usuario.getEndereco()%>
  • <% } %>

    </html>[/code]

    Erro:

    HTTP Status 500 - 
    
    --------------------------------------------------------------------------------
    
    type Exception report
    
    message 
    
    description The server encountered an internal error () that prevented it from fulfilling this request.
    
    exception 
    
    org.apache.jasper.JasperException: Unable to load class for JSP
    	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    
    
    root cause 
    
    org.apache.jasper.JasperException: Unable to load class for JSP
    	org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:598)
    	org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:147)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:315)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    
    
    root cause 
    
    java.lang.ClassNotFoundException: org.apache.jsp.lista_002delegante_jsp
    	java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    	java.security.AccessController.doPrivileged(Native Method)
    	java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    	org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:133)
    	org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:65)
    	org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:596)
    	org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:147)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:315)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

    e tb!!

    eu estou cm agenda.jar, jstl.jar, standard.jar no class-path do projeto e eles estao na pasta WEB-INF\lib !!!

    a classe DAOagenda esta compilando em java 1.4 pois fiquei sabendo q nao pode ser o 5.0

    vai ai as classes da agenda.jar

    
    public class DAOagenda {
    	private static Connection con;
    
    	private static PreparedStatement stmt;
    
    	static int IDUser;
    
    	public static void Connect() {
    		try {
    			con = ConnectionMySQL.getConnection("agenda");
    		} catch (ClassNotFoundException e) {
    
    			e.printStackTrace();
    		} catch (SQLException e) {
    
    			e.printStackTrace();
    		}
    
    	}
    
    
    	public static List getLista() {
    
    		Connect();
    		try {
    			stmt = (PreparedStatement) con
    					.prepareStatement("select * from usuario");
    			ResultSet rs = (ResultSet) stmt.executeQuery();
    			List lista = new ArrayList();
    			while (rs.next()) {
    				// criando o objeto Usuario
    
    				String nome = rs.getString("nome");
    				String telefone = rs.getString("telefone");
    				String email = rs.getString("email");
    				Usuario usuario = new Usuario(nome, telefone, email);
    
    				// adicionando o objeto à lista
    				lista.add(usuario);
    
    			}
    			rs.close();
    			stmt.close();
    			con.close();
    
    			return lista;
    
    		} catch (SQLException e) {
    			e.printStackTrace();
    			return null;
    
    		}
    
    	}
    
    

    [code]

    package com.cpaconsulting.agenda.vo;

    public class Usuario {

    private int IDUser;
    
    private String nome;
    
    private String telefone;
    
    private String email;
    
    public Usuario(String nome, String telefone, String email) {
    
    	this.nome = nome;
    	this.telefone = telefone;
    	this.email = email;
    
    }
    
    public Usuario(int IDUser, String nome, String telefone, String email) {
    	this.IDUser = IDUser;
    	this.nome = nome;
    	this.telefone = telefone;
    	this.email = email;
    
    }
    
    public Usuario() {
    
    }
    
    public String getEmail() {
    	return this.email;
    }
    
    public String getNome() {
    	return this.nome;
    }
    
    public String getTelefone() {
    	return this.telefone;
    }
    
    public int getIDuser() {
    	return this.IDUser;
    }
    
    public String toString() {
    
    	return nome + " :: " + telefone + " :: " + email;
    }
    

    }[/code]

    fikou muita coisa… mais tah tudu ai… se alguem consegir me ajudar… vlwww

    [quote=emanoeltadeu]pelo q vi no seu jsp vc não colocou a diretiva page. coloque-a em cima da &lt@taglib pra ver se funciona:

    &lt;%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%&gt; [/quote]

    nao funcionou

    verifique o seu web.xml

    http://java.sun.com/jsp/jstl/core /WEB-INF/c.tld

    aponte o tablib-location para onde está o c.tld (tem que estar dentro do WEB-INF)

    Verifique tambem a biblioteca (jar) do JSTL.