Problema com JavaBean... eu acho

1 resposta
hattorihzo

Boa tarde pessoal.

Estou com o seguinte problema, criei uma classe (código segue abaixo) , adiciona ela ao faces-config (managed-bean) até ai tudo bem, gostaria de jogar o resultado de listarTodos para uma <h:dataTable> seto o método listarTodos no value da dataTable e insiro login e senha nas columns, rodo o aplicativo no tomcat uma beleza sem erros, mas quando mostra a página a datatable esta em branco sem registro, no banco tem dados cadastrados, fiz um teste de conexão e o mesmo retorno como conectado, mas nada acontece, estou esquecendo de algo ou a minha classe esta errada.

Se alguém puder ajudar fico grato.

package teste.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import teste.conexao.MyExceptions;
import teste.conexao.dbConexaoFactory;
import teste.model.Usuario;

public class UsuarioDAO {
	private Connection conn;
	private List<Usuario> listaUsuarios;

	public UsuarioDAO() throws MyExceptions {
		try {
			this.conn = dbConexaoFactory.getConnection();
		} catch (Exception e) {
			throw new MyExceptions("Erro: " + e.getMessage());
		}
	}

	public List<Usuario> listarTodos() throws MyExceptions {
		PreparedStatement ps = null;
		Connection conn = null;
		ResultSet rs = null;
		listaUsuarios = new ArrayList<Usuario>();		
		try {
			conn = this.conn;
			ps = conn.prepareStatement("SELECT login, senha FROM pessoa");
			rs = ps.executeQuery();
			while (rs.next()) {
				Usuario user = new Usuario();
				user.setLogin(rs.getString(1));
				user.setSenha(rs.getString(2));	
				listaUsuarios.add(user);
			}
			return listaUsuarios;
		} catch (SQLException sqle) {
			throw new MyExceptions(sqle);
		} finally {
			dbConexaoFactory.closeConnection(conn, ps, rs);
		}
	}

	public List<Usuario> getListaUsuarios() {
		return listaUsuarios;
	}

	
	public void setListaUsuarios(List<Usuario> listaUsuarios) {
		this.listaUsuarios = listaUsuarios;
	}
}

1 Resposta

Jair_Rillo_Junior

Ola

Aparentemente seu código está correto.

Dê uma verificada se os dados estao de fato vindo do banco de dados, se a sua List contém dados, etc.

Você pode fazer isso colocando um System.out.println no método listarTodos, ou usar um breakpoint.

Verifque também o código do h:dataTable, se tudo está correto.

Criado 24 de outubro de 2007
Ultima resposta 24 de out. de 2007
Respostas 1
Participantes 2