Estou tentado salvar um registro depois que verifico se ele existe. qd ele não existe vou tentar salvar da o erro
Exception in thread “AWT-EventQueue-0” java.lang.NullPointerException: Cannot invoke “pdv.modal.Cliente.setName(String)” because “this.cli” is null o que devo fazer pra salvar apos a pesquisa?
esse é meu metodo que salva e o botao que salva
btnCadastrar = new JButton("Cadastrar");
btnCadastrar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
try {
cli = dados.buscarPhone(txtPesquisar.getText());
if (cli == null) {
salvar();
} else {
update();
}
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
});
protected void salvar() throws SQLException {
cli.setName(txtNome.getText());
cli.setLast_name(txtSobrenome.getText());
cli.setPhone_number(txtPhone.getText());
if (radio_yes.isSelected()) {
ativo = true;
cli.setIs_wtatsapp(ativo);
// System.out.println("Ativo: " + ativo);
} else {
ativo = false;
cli.setIs_wtatsapp(ativo);
// System.out.println("Ativo: " + ativo);
}
dados.save(cli);
}
protected void buscarPhone() throws SQLException {
cli = dados.buscarPhone(txtPesquisar.getText());
if (cli != null) {
txtNome.setEditable(true);
txtSobrenome.setEditable(true);
txtPhone.setEditable(true);
btnCadastrar.setEnabled(true);
btnExcluir.setEnabled(true);
btnCancelar.setEnabled(true);
lbl_pesquisa.setText("");
txtID.setText(String.valueOf(cli.getId()));
txtNome.setText(cli.getName());
txtSobrenome.setText(cli.getLast_name());
txtPhone.setText(cli.getPhone_number());
isWhatsap = cli.isIs_wtatsapp();
if (txtNome.getText().equals("")) {
lbl_nome.setText("* campo obrigatório");
}
if (isWhatsap) {
radio_yes.setSelected(true);
radio_no.setSelected(false);
} else {
radio_no.setSelected(true);
radio_yes.setSelected(false);
}
btnCadastrar.setText("Alterar");
} else {
//Quando entra aqui acontece o erro
//Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: Cannot invoke "pdv.modal.Cliente.setName(String)" because "this.cli" is null
txtNome.setEditable(true);
txtSobrenome.setEditable(true);
txtPhone.setEditable(true);
txtID.setText("");
txtNome.setText("");
txtSobrenome.setText("");
txtPhone.setText("");
btnCadastrar.setText("Cadastrar");
btnCadastrar.setEnabled(true);
btnCancelar.setEnabled(true);
btnExcluir.setEnabled(false);
System.out.println("dados nao encontrado");
String phone = txtPesquisar.getText();
txtPhone.setText(phone);
}
}

