Rafael é o seguinte voce trabalha com jsf + hibernate?
O problema que estou tento é o seguinte:
tenho duas tabela contato e telefone que formam um relacionamento de
1:N ,ou seja um contato pode ter N telefones, estou utilizando
Hibernate Annotations e os atributos estao mapeados da seguinte
forma:
public class contato{
.
.
.
@OneToMany
@JoinColumn(name="cod_contato")
private List<Telefone> telefones = new ArrayList();
.
.
.
}
public class telefone{
.
.
.
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name="cod_contato", insertable=true, updatable=true)
@Fetch(FetchMode.JOIN)
@Cascade(CascadeType.SAVE_UPDATE)
private Contato contato;
.
.
.
}
segundo li em alguns site esse tipo de relacionamento possui uma
particularidade na hora de carregar o objetos ( contato - telefone) da
base, tipo para que eu possa carregar a lista de telefone associada
a um determinado contato e necessario que no momento em que o contato
for carregado o atributo List<telefone> telefone seja inicializado
exemplo:
public Contato buscar(Integer id){
this.sessao = HibernateUtility.getSession();
try{
Contato contato =
(Contato)this.sessao.get(Contato.class,id);
//aqui ocorre a inicializacao da lista de telefone
Hibernate.initialize(contato.getTelefones());
return contato;
} catch (Exception ex) {
ex.printStackTrace();
return null;
} finally{
sessao.close();
}
}
.
possuo no meu projeto um a lista de contato , quando escolho um
contato desta lista uma outra tela e chamada com todos os dados
referente a esse contato preenchido inclusive a lista de telefone isso
funciona perfeitamente, o problema é quando eu posto esses dados para
atualizacao dai acontece um erro no metodo getTelefone() , e naum to
conseguindo resolver isso ja estou pelejando com isso umas 2 semanas e
nada , se voce puder me ajudar serei muito grato. caso voce ja tenha
passado por isso e tenha ai algum codigo que possa ser postado para
mim meu email é
fabio.o...@rezendesistemas.com.br ou
fab...@gmail.com
Atenciosamente
Fabio Borges de Oliveira
Desenvolvedor WEB
Rezende Sistema Ltda.