Boa noite, infelizmente continuo com o problema. Já havia tentado foreach, e não funcionou também. Quanto a estar invocando o método, acredito que eu esteja sim, pois coloquei os system.out para teste no metodo e o resultado é mostrado no console. Não estou conseguindo encontrar a solução. Vou colocar o outro método onde chamo este.
Tenho dois forms onde um é o de cadastro e o outro é o de pesquisa. Invoco esse método no duplo clique da jtable no outro form. Mais ou menos assim.
private void tablePesquisaMouseClicked(java.awt.event.MouseEvent evt) {
if (evt.getClickCount() == 2) {
CadastroCliente cadastro = new CadastroCliente();
cadastro.listarPesquisa(this.retornaSelecao());
this.dispose();
}
}
Esse metodo pega a codigo da da coluna codigo da tabela, para eu saber qual o codigo de cliente devo colocar na consulta sql.
O metodo de retorno do codigo é seguinte.:
public int retornaSelecao() {
return (int) tablePesquisa.getValueAt(tablePesquisa.getSelectedRow(), 0);
}
O metodo mouseclicked chama o metodo listar que esta no form de cadastro, que é seguinte.:
public void listarPesquisa(int codigo) {
ClienteControl cli = new ClienteControl();
clientes = cli.listar("" + codigo, 2);
mostrarClientes(clientes);
}
E este por sua vez chama o mostrar clientes que deveria exibir os valores nos campos.
protected void mostrarClientes(List<ClienteBean> clientes) {
/*
for (int i = 0; i < clientes.size(); i++) {
txtCodigo.setText("" + clientes.get(i).getCodigo());
txtDataCadastro.setText("" + clientes.get(i).getDataCadastro());
txtNome.setText("" + clientes.get(i).getNome());
System.out.println(""+ clientes.get(i).getCodigo());
System.out.println(""+ clientes.get(i).getDataCadastro());
System.out.println(""+ clientes.get(i).getNome());
}
}
e o metodo listar pesquisa chama o metodo listar que esta na classe dao.
public List<ClienteBean> listar(String consulta) {
List<ClienteBean> clientes = new ArrayList();
pstm = bd.conectar().prepareStatement(consultaClienteCodigo);
pstm.setInt(1, Integer.parseInt(consulta));
rst = pstm.executeQuery();
ClienteBean cli;
while (rst.next()) {
cli = new ClienteBean();
cli.setCodigo(rst.getInt("codigo"));
cli.setDataCadastro(rst.getDate("datcad"));
cli.setDataCadastro(rst.getDate("nascli"));
cli.setPessoa(rst.getString("tippessoa"));
cli.setNome(rst.getString("nome"));
cli.setApelido(rst.getString("apelido"));
.
.
.
clientes.add(cli);
}
return clientes;
}
Estou fazendo algo errado?
Muito Obrigado!