Ola pessoal,
No desenvolvimento de um sistema de cadastro onde tenho uma tabela de Clientes, e outra de filhos “filhos de cliente”, então tenho um relacionamento um para muitos. Na Minha classe de Clientes chamada “Obreio” tenho mapeado o relacionamento do jpa veja:
//Classe Obreiro
@Id
@Column(name = "obreiro", nullable = false)
private Integer obreiro;
...
@OneToMany(mappedBy = "obreiro")
private Collection<Filho> filhoCollection;
Na classe Filho, eu tenho os seguintes atributos.
//Classe Filho
@Id
@Column(name = "filho", nullable = false)
private Integer filho;
@Column(name = "nome")
private String nome;
@Column(name = "dataNascimento")
@Temporal(TemporalType.DATE)
private Date dataNascimento;
@JoinColumn(name = "escolaridade", referencedColumnName = "escolaridade")
@ManyToOne
private Escolaridade escolaridade;
@JoinColumn(name = "profissao", referencedColumnName = "profissao")
@ManyToOne
private Profissao profissao;
@JoinColumn(name = "obreiro", referencedColumnName = "obreiro")
@ManyToOne
private Obreiro obreiro;
O problema é o seguinte, eu quero salvar o Cadastro de Obreiro junto com seus filhos de uma vez só, entao para isso eu faço uma persistencia dos filhos em sessão através de um objeto list e na hora de persistir o Obreiro eu seto:
Obreiro.setFilhoCollection(listaDeFilhosDaSessao);
Só que logicamente eu nao tenho o codigo do obreiro entao todos os objetos do tipo Filho passado na lista estão com o relacionamento “obreiro” como null.
E por isso esta dando erro.
Alguem já fez algo do tipo e pode mi ajudar a solucionar esse problema?
valew
