Hibernate Lazy e Fetch!

3 respostas
T

Bom gente, é um pouco urgente, é relatorio de um servico aki.
Se puderem ajudar eu agradeço.

Tenho uma namedQuery pra buscar as listas no momento da consulta:

Essas sao as duas listas:

@OneToMany(cascade = CascadeType.ALL, mappedBy = “entrevista”)
private Set respostasAbertas;

@ForeignKey(name = FkCpRespostaFechadaEntrevista1, inverseName = FkCpRespostaFechadaEntrevista2)

@JoinTable(name = CpRespostaFechadaEntrevista, joinColumns = { @JoinColumn(name = entrevista, referencedColumnName = id, nullable = false) }, inverseJoinColumns = { @JoinColumn(name = resposta, referencedColumnName = id, nullable = false) })

@ManyToMany()

private Set respostasFechadas;

NAMED QUERY:
@NamedQuery(name = “CpEntrevista.findAllProperties”, query = "FROM CpEntrevista c join fetch c.respostasFechadas "
+ "join fetch c.respostasAbertas " + “where c.id = :id”)

AGORA O PEPINO:
O hibernate faz a CONSULTA, mas nao atribui a lista ao atributo, ou seja, faz a consulta mas nao PREENCHE a LISTA, ALGUEM SABE COMO FAZ PRA ATRIBUIR O VALOR DA CONSULTA A LISTA ???

3 Respostas

leoramos

Mestre, a namedQuery você tem que invocar manualmente, até onde eu sei.
http://www.mkyong.com/hibernate/hibernate-named-query-examples/

T

Eu invoco ela…
ela faz a consulta,
pelo console do debug voce enxerga o sql realizado e Existe um tal de ‘owner’ dentro do debug, no qual enxerga a entidade retornada…

O problema é que a entidade nao volta preenchida… so faz a consulta e mais nada!

maior_abandonado

e o objeto vem nulo?

se for isso, provavelmente sua query é feita mas a linha na tabela não é encontrada… pega a query e executa no banco trocando as interrogações pelos valores

Criado 15 de setembro de 2011
Ultima resposta 15 de set. de 2011
Respostas 3
Participantes 3