@carvalhoromulo escreveu:
Bom dia a todos.
estou com uma dificuldade para salvar no banco minhas classes referenciadas.Tenho 2 tabelas. sendo uma chamada estoque. e outra identificador.
a tabela estoque tem como campo chave o ID_ESTOQUE.
eu preciso colocar essa referencia na tabela identificador.Se alguém puder me ajudar agradeço.
classe TB_ESTOQUE.
import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;/**
*
* @author Romulo
*/
@Entity
@SequenceGenerator(name = "ID_ESTOQUE", sequenceName = "GEN_TB_ESTOQUE_ID")
public class TB_ESTOQUE implements Serializable {@Id @GeneratedValue(strategy = GenerationType.AUTO, generator = "ID_ESTOQUE") private int ID_ESTOQUE; private String DESCRICAO; private Double PRC_VENDA; public int getID_ESTOQUE() { return ID_ESTOQUE; } public void setID_ESTOQUE(int ID_ESTOQUE) { this.ID_ESTOQUE = ID_ESTOQUE; } public String getDESCRICAO() { return DESCRICAO; } public void setDESCRICAO(String DESCRICAO) { this.DESCRICAO = DESCRICAO; } public Double getPRC_VENDA() { return PRC_VENDA; } public void setPRC_VENDA(Double PRC_VENDA) { this.PRC_VENDA = PRC_VENDA; }
classe IDENTIFICADOR.
import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;
import javax.persistence.SequenceGenerator;/**
*
* @author Romulo
*/
@Entity
@SequenceGenerator(name = "ID_IDENTIFICADOR", sequenceName = "GEN_TB_EST_IDENTIFICADOR_ID")
public class TB_EST_IDENTIFICADOR implements Serializable {@Id @GeneratedValue(strategy = GenerationType.AUTO, generator = "ID_IDENTIFICADOR") private int ID_IDENTIFICADOR; @OneToOne @JoinColumn(name = "ID_ESTOQUE", referencedColumnName = "ID_ESTOQUE", insertable = false, updatable = false) private TB_ESTOQUE ID_ESTOQUE ; public int getID_IDENTIFICADOR() { return ID_IDENTIFICADOR; } public void setID_IDENTIFICADOR(int ID_IDENTIFICADOR) { this.ID_IDENTIFICADOR = ID_IDENTIFICADOR; } public TB_ESTOQUE getID_ESTOQUE() { return ID_ESTOQUE; } public void setID_ESTOQUE(TB_ESTOQUE ID_ESTOQUE) { this.ID_ESTOQUE = ID_ESTOQUE; }
Metodo para salvar.
public void salva(TB_EST_IDENTIFICADOR identificador) throws HibernateException {Transaction tx_TB_EST_IDENTIFICADOR = session.beginTransaction(); session.save(identificador); tx_TB_EST_IDENTIFICADOR.commit(); session.close(); }
Como estou realizando a inclusao.
// SALVA O ITEM DO ESTOQUE
TB_ESTOQUE item = new TB_ESTOQUE();
item.setDESCRICAO("AAA");
item.setPRC_VENDA(1.00);
new TB_ESTOQUE_DAO(HibernateUtil.getSessionBDLocal()).salva(item);//SALVA O IDENTIFICADOR TB_EST_IDENTIFICADOR ident = new TB_EST_IDENTIFICADOR(); ident.setID_ESTOQUE(item); new TB_EST_IDENTIFICADOR_DAO(HibernateUtil.getSessionBDLocal()).salva(ident);
Mensagem de erro no terminal.
[AWT-EventQueue-0] WARN org.hibernate.util.JDBCExceptionReporter - SQL Error: 335544347, SQLState: HY000
[AWT-EventQueue-0] ERROR org.hibernate.util.JDBCExceptionReporter - GDS Exception. 335544347. validation error for column IDESTOQUE, value "** null **_"
Mensagens: 1
Participantes: 1