Estou com um problema aqui que não consigo reolver:
metodo para salvar no BD
public void salvarContabil(Contabil contabil) {
try {
em.getTransaction().begin();
em.persist(contabil);
em.getTransaction().commit();
} catch (Exception e) {
//Verificar se a transaction esta ativa para chamar o rollbacks
if (em.getTransaction().isActive()) {
em.getTransaction().rollback();
}
throw e;
}
}
Metodo que pega os valores do meu form
private void cadastrarContabil() {
String numSerie = equipamento.getText();
String desc = descricao.getText();
String imobil = imobilizado.getText();
String data = dataCadastro.getText();
String subNum = subNumero.getText();
Integer local = localidade.getSelectedIndex();
Integer qnt = Integer.parseInt(quantidade.getValue().toString());
Float vCompra = Float.parseFloat(valorCompra.getText());
Float vDepre = Float.parseFloat(valorDepreciacao.getText());
Float vRes = Float.parseFloat(valorResidual.getText());
if ((localidade.getSelectedIndex() == 0) || (quantidade.getValue() == (Integer) 0)
|| (equipamento.getText() == null || equipamento.getText().trim().equals(""))
|| (descricao.getText() == null || descricao.getText().trim().equals(""))
|| (valorCompra.getText() == null || valorCompra.getText().trim().equals(""))
|| (valorDepreciacao.getText().trim().equals("") || valorDepreciacao.getText() == null)
|| (valorResidual.getText().trim().equals("") || valorResidual.getText() == null)
|| (dataCadastro.getText() == null || dataCadastro.getText().trim().equals(""))
|| (subNumero.getText() == null || subNumero.getText().trim().equals(""))) {
JOptionPane.showMessageDialog(rootPane, "Todos os campos devem ser preenchidos");
} else {
// System.out.println(numSerie+"\n"+ imobil+"\n"+ subNum+"\n"+data+"\n"+ local+"\n"+ qnt+"\n"+ vCompra+"\n"+ vDepre+"\n"+ vRes+"\n"+ desc);
if (repository.buscarContabil(numSerie)!=null) {
repository.salvarContabil(new Contabil(numSerie, imobil, subNum, data, local, qnt, vCompra, vDepre, vRes, desc));
JOptionPane.showMessageDialog(rootPane, "Contabil cadastrado com sucesso !");
limpar();
} else {
JOptionPane.showMessageDialog(rootPane, "Equipamento já cadastrado");
equipamento.setText("");
}
}
}
@Entity
public class Contabil implements Serializable {
@Id
@Column(nullable = false, length = 6)
private String equNR;
@Column(nullable = false, length = 10)
private String imobilizado;
@Column(nullable = false)
private String subNumero;
@Column(nullable = false)
// @Temporal(javax.persistence.TemporalType.DATE)
private String dataContabil;
@Column(nullable = false)
private Integer centroCusto;
@Column(nullable = false)
private int quantidade;
@Column(nullable = false)
private float valorAquisicao;
@Column(nullable = false)
private float valorDepreciacao;
@Column(nullable = false)
private float valorResidual;
@Column(nullable = false)
private String descricao;
public Contabil() {
}
public Contabil(String equNR, String imobilizado, String subNumero, String dataContabil,
Integer centroCusto, int quantidade, float valorAquisicao, float valorDepreciacao,
float valorResidual, String descricao) {
this.equNR = equNR;
this.imobilizado = imobilizado;
this.subNumero = subNumero;
this.dataContabil = dataContabil;
this.centroCusto = centroCusto;
this.quantidade = quantidade;
this.valorAquisicao = valorAquisicao;
this.valorDepreciacao = valorDepreciacao;
this.valorResidual = valorResidual;
this.descricao = descricao;
}
/**
* @return the equNR
*/
public String getEquNR() {
return equNR;
}
/**
* @param equNR the equNR to set
*/
public void setEquNR(String equNR) {
this.equNR = equNR;
}
/**
* @return the imobilizado
*/
public String getImobilizado() {
return imobilizado;
}
/**
* @param imobilizado the imobilizado to set
*/
public void setImobilizado(String imobilizado) {
this.imobilizado = imobilizado;
}
/**
* @return the subNumero
*/
public String getSubNumero() {
return subNumero;
}
/**
* @param subNumero the subNumero to set
*/
public void setSubNumero(String subNumero) {
this.subNumero = subNumero;
}
/**
* @return the dataContabil
*/
public String getDataContabil() {
return dataContabil;
}
/**
* @param dataContabil the dataContabil to set
*/
public void setDataContabil(String dataContabil) {
this.dataContabil = dataContabil;
}
/**
* @return the centroCusto
*/
public Integer getCentroCusto() {
return centroCusto;
}
/**
* @param centroCusto the centroCusto to set
*/
public void setCentroCusto(Integer centroCusto) {
this.centroCusto = centroCusto;
}
/**
* @return the quantidade
*/
public int getQuantidade() {
return quantidade;
}
/**
* @param quantidade the quantidade to set
*/
public void setQuantidade(int quantidade) {
this.quantidade = quantidade;
}
/**
* @return the valorAquisicao
*/
public float getValorAquisicao() {
return valorAquisicao;
}
/**
* @param valorAquisicao the valorAquisicao to set
*/
public void setValorAquisicao(float valorAquisicao) {
this.valorAquisicao = valorAquisicao;
}
/**
* @return the valorDepreciacao
*/
public float getValorDepreciacao() {
return valorDepreciacao;
}
/**
* @param valorDepreciacao the valorDepreciacao to set
*/
public void setValorDepreciacao(float valorDepreciacao) {
this.valorDepreciacao = valorDepreciacao;
}
/**
* @return the valorResidual
*/
public float getValorResidual() {
return valorResidual;
}
/**
* @param valorResidual the valorResidual to set
*/
public void setValorResidual(float valorResidual) {
this.valorResidual = valorResidual;
}
/**
* @return the descricao
*/
public String getDescricao() {
return descricao;
}
/**
* @param descricao the descricao to set
*/
public void setDescricao(String descricao) {
this.descricao = descricao;
}
}
No botao OK eu chamo o metodo de cadastrarContabil()
Classe Repository é onde estao os meus metodos (salvarContabil) acima
e por fim minha entidade Contabil
quando eu chamo repository.buscarContabil(numSerie)!=null ele da exception de null pointer eu fiz um ou.print ra confirmar se estava setando, e ele esta normal. O que será que é?
Obrigado !