Não consigo listar registros

2 respostas
Wesley_Lopes

[i][b]Galera é o seguinte:

Estou tentando fazer um select ridículo(select * from TbUsuarios) em um bean e mostrá-lo em uma jsp, mas não estou conseguindo.

Além do programa não listar as informações, ele não dá nenhuma menssagem de erro…

Com certeza é uma “orelhada” minha, mas eu ainda não sei onde que foi.
Se alguém puder ajudar este iniciante, o código é o seguinte:[/b][/i]

u[/u]

package untitled3;

import java.sql.*;

public class TransacaoBanco extends java.lang.Object

{

private Connection con;

private ResultSet  rs;

private String     login;
public TransacaoBanco()

{

try

{

Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);

con = DriverManager.getConnection(“jdbc:odbc:odbcdb1, “”, “”);
}
catch (Exception e)
{
  System.out.println("Nao conectou ao banco");
};

}

public void close()

{

try

{

con.close();

}

catch (Exception e)

{

System.out.println(Nao fechou o banco);

};

}
public void ListaUsuarios()

{

try

{

if (rs != null)

{

rs.close();

}
Statement stmtListaUsuarios = this.con.createStatement();
  rs = stmtListaUsuarios.executeQuery("SELECT * FROM TbUsuarios");

  if (rs == null)
  {
    System.out.println("o rs não pegou nada!!!");
  }
}
catch (Exception e)
{
  System.err.println ("Falha criando o rs no ListaUsuarios");
}

System.out.println("Ainda não entrou no while");

try
{
  if (rs != null)
  {
    while(rs.next())
    {
      System.out.println("Entrou no while");
      login = rs.getString("login");
    }
    rs.close();
    con.close();
  }
  else
  {
    System.out.println("Deu biziu");
  }
}
catch (Exception e)
{
  System.err.println ("Falha recuperando os dados:");
}

}

public String getLogin()

{

return login;

}

}

i[/i]

<%@ page import = “untitled3.TransacaoBanco.*” %>
<jsp:useBean id=“listausuariosBeanId” scope=“session” class=“untitled3.TransacaoBanco” />

<html>
<head>
<title>listausuarios</title>
</head>

<jsp:getProperty name="listausuariosBeanId" property="login"/> </html>

[i][b]Desde já agradeço toda e qualquer ajuda…

Wesley Lopes[/b][/i]

2 Respostas

karluqs

<jsp:getProperty name="listausuariosBeanId" property="login"/>

No jsp você está chamando o método getLogin de sua classe TransacaoBanco, e segundo seu código esse método retorna o valor da propriedade private Login

public String getLogin() { return login; }

Logo se Login estiver vazio, num vai trazer nada mesmo, acho que você está querendo executar ListaUsuarios() certo ??, tem que mudar ele para getListaUsuarios() e mudar o jsp para

<jsp:getProperty name="listausuariosBeanId" property="listaUsuarios"/>

Ou algo semelhante a isso ok!

tiagops

Por favor, se puderem tirar minhas duvidas:

Onde fica o arquivo .class de conexao ao banco?
Para que o JSP ache, tenho que colocar no "diretorio da aplicacao"WEB-INFclasses certo? É isso mesmo?

Meu JSP nao esta encontrando a classe:

<blockquote>Generated servlet error:

[javac] Since fork is true, ignoring compiler setting.

[javac] Compiling 1 source file

[javac] Since fork is true, ignoring compiler setting.

[javac] C:Tomcat 4.1workStandalonelocalhost	estejspcon_servlet_jsp.java:7: package banco.conbd does not exist

[javac] import banco.conbd.*;

[javac] ^

[javac] C:Tomcat 4.1workStandalonelocalhost	estejspcon_servlet_jsp.java:44: cannot resolve symbol

[javac] symbol  : class conbd

[javac] location: class org.apache.jsp.con_servlet_jsp

[javac]       conbd acesso = null;

[javac]       ^</blockquote>

A outra duvida é:

No JSP eu tenho que usar a linha:

<%@ page import = "untitled3.TransacaoBanco.*" %>

e a linha:

<jsp:useBean id="listausuariosBeanId" scope="session" class="untitled3.TransacaoBanco" />

Qual a diferenca das duas?

Eu vi uma aplicacao que nao usava a linha useBean, so a import, o que isso quer dizer?
De uma forma ta acessando como servlet e da outra com Java Beans?
Desculpem a ignorancia, estou tentando me acostumar com os termos do java!

Obrigado!

Criado 10 de junho de 2003
Ultima resposta 11 de jun. de 2003
Respostas 2
Participantes 3