Tenho uma classe Grupo com um Set de Itens mapeado como lazy. Segue o mapeamento, feito com annotations.
Em Grupo:
@OneToMany(fetch=FetchType.LAZY, mappedBy="grupo")
private Set<Item> itens;
Em Item:
@ManyToOne
@JoinColumn(name="id_grupo")
private Grupo grupo;
Quero listar todos os grupos com os seus respectivos itens, então dou um findAll em Grupo e depois um grupo.getItens(). Algo como:
Collection<Grupo> grupos = dao.findAll(Grupo.class);
for (Grupo grupo : grupos) {
System.out.println(grupo.getNome());
for (Item item : grupo.getItens()) {
System.out.println(item.getNome());
}
}
Com o primeiro grupo tudo acontece do jeito que deveria acontecer, mas a partir do segundo, o Set de itens vem com o número correto de objetos, mas eles vêm com id = 0 e outros atributos null.
Alguém tem idéia de por que isso pode estar acontecendo? Uso o hibernate 3.2 com hibernate annotations.
