Olá galera, estou começando com o Hibernate Annotations e estou com um problema em criar uma chave composta entre as seguintes tabelas e classes:
Tabelas:
[code]------------------
Cidade
(pk) nome text
(pk)(fk) uf text
------------------[/code]
Cidade.uf é um foreing key de UF.sigla
[code]------------------
UF
(pk) sigla text
nome text
------------------[/code]
Nas Classes tenho o seguinte:
@Entity
public class Cidade{
@Id
private String nome;
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "uf", insertable = true, updatable = true)
@Fetch(FetchMode.JOIN)
@Cascade(CascadeType.SAVE_UPDATE)
private UF uf;
}
@Entity
public class UF {
@Id
private String nome;
@OneToMany(mappedBy="uf", fetch=FetchType.LAZY)
@Cascade(CascadeType.ALL)
public List<Cidade> cidades;
}
Refrescando a cuca…
Minha classe Cidade tem uma associaçao many-to-one com UF
e na tabela cidade tem a column uf text.
Primary Key(nome,uf);
Ele não está conseguinte pegar o conteúdo de cidade.uf.sigla e salvar em cidade.uf
Ocorre o seguinte erro:
SEVERE: ERROR: null value in column “uf” violates not-null constraint