Olá, boa tarde a todos.
Estou fazendo uma tela de pesquisa e quando o usuário da um duplo clique na jtable do frame pesquisa ele pega o codigo do cliente e passa o valor para a tela de cadastro, onde é feita a busca para colocar os valores dos dados nos jtextfield, mais está dando nullpointexception.
Segue código.:
Tela de Pesquisa.:
Método onde pega o código do cliente na jTable
public int retornaSelecao() {
return (int) tablePesquisa.getValueAt(tablePesquisa.getSelectedRow(), 0);
}
Evento MouseClicked da jTable onde passo o dado
private void tablePesquisaMouseClicked(java.awt.event.MouseEvent evt) {
if (evt.getClickCount() == 2) {
CadastroCliente cliente = new CadastroCliente(this.retornaSelecao());
this.dispose();
}
}
Tela de Cadastro
public CadastroCliente() {
initComponents();
this.desabilitaCampos();
btnAlterar.setEnabled(false);
btnExcluir.setEnabled(false);
btnCancelar.setEnabled(false);
btnSalvar.setEnabled(false);
btnNovo.setEnabled(true);
btnPesquisa.setEnabled(true);
btnSair.setEnabled(true);
}
public CadastroCliente(int codigo){
String sql = "SELECT * FROM CLIENTE WHERE CODIGO = " + codigo;
Conexao conexao = new Conexao();
ResultSet rst;
//System.out.println("" + codigo);
try {
pstm = conexao.conectar().prepareStatement("SELECT * FROM CLIENTE WHERE CODIGO = '" + codigo + "';");
rst = pstm.executeQuery();
while (rst.next()) {
txtCodigo.setText("" + rst.getString("codigo"));
System.out.println("" + rst.getString("codigo"));
txtDataCadastro.setText(rst.getDate("datacadastro").toString());
txtDataNascimento.setDate(rst.getDate("datanascimento"));
txtNome.setText(rst.getString("nome").toUpperCase());
txtApelido.setText(rst.getString("apelido").toUpperCase());
txtEndereco.setText(rst.getString("endereco").toUpperCase());
txtNumero.setText(rst.getString("numero"));
txtComplemento.setText(rst.getString("complemento").toUpperCase());
txtBairro.setText(rst.getString("bairro").toUpperCase());
txtCep.setText(rst.getString("cep"));
txtNomeCidade.setText(rst.getString("cidade").toUpperCase());
txtRg.setText(rst.getString("rg"));
txtCpf.setText(rst.getString("cpf"));
cbPagamento.setSelectedItem(rst.getInt("diapagamento"));
txtMensalidade.setText("" + rst.getFloat("mensalidade"));
txtTelefoneResidencial.setText(rst.getString("telres"));
txtTelefoneComercial.setText(rst.getString("telcom"));
txtTelefoneCelular.setText(rst.getString("celular"));
txtInformacoes.setText(rst.getString("informacoes"));
}
} catch (SQLException ex) {
Logger.getLogger(CadastroCliente.class.getName()).log(Level.SEVERE, null, ex);
}
}
Onde estou errando?
Alguém pode me ajudar?
Obrigado!