Org.hibernate.LazyInitializationException: could not initialize proxy - the owning Session was close

1 resposta
L

Srs,

estou tendo problemas para carregar um objeto, esta ocorrendo o erro descrito no titulo do topico.

Sei que o problema é com o atributo LAZY porém nao estou conseguindo resolver de forma satisfatória/correta.

abaixo segue o método

public Object recuperarPorId(Class classPersist, Serializable pk) throws Exception {
		Session session = getSession();
		Transaction tx = session.beginTransaction();
		//Object objetoPersist = session.load(classPersist, pk);
		Object objetoPersist = session.get(classPersist, pk);
		tx.commit();
		session.close();
		return objetoPersist;
	}

Se eu comentar a linha “session.close()” eu consigo carregar porém quando vou salvar (update) recebo outro erro

Caused by: org.hibernate.HibernateException: Illegal attempt to associate a collection with two open sessions

Alguém pode me ajudar com esse problema?

agradeço a atenção de todos

1 Resposta

plentz
  1. você está usando a Session do Hibernate de forma totalmente errada.
  2. você está tentando acessar um atributo do objeto que não foi carregado pelo seu “recuperarPorId”
  3. se você está usando java 5, procure por genericDao e altere esse método que está beeem feio.
Criado 15 de março de 2007
Ultima resposta 15 de mar. de 2007
Respostas 1
Participantes 2