Hibernate - could not initialize proxy - no Session  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
ronildobraga
JavaEvangelist

Membro desde: 29/03/2006 10:06:51
Mensagens: 443
Localização: sao paulo - sp
Offline

Ola, estou tendo um problema no hibernate e nao tenho ideia de porque esta ocorrendo esse erro:


Por favor, alguem pode me ajudar a resolver ?
Desde ja muito obrigado

Ronildo da Rocha Braga Jr.
Programador, nada mais.

blog: http://www.iprogramming.blogspot.com/
[Email] [WWW] [MSN]
plentz
Moderador
[Avatar]

Membro desde: 28/01/2004 07:34:12
Mensagens: 1584
Localização: Porto Alegre, RS
Offline

http://www.hibernate.org/43.html

Diego Plentz - Twitter
"Provide options, don't make lame excuses."
[Email] [WWW]
Hammer
JavaGuru

Membro desde: 13/11/2006 17:10:39
Mensagens: 246
Offline

bem, eu li toda essa pagina na pagina do hibernate mais não consegui resolver o meu problema

fica dizendo uma exceção do lazy e diz no session

acontece qd pego qq campo de um objeto, menos o id

pq isto esta acontecendo?
[MSN]
thiago1
Smalltalk

Membro desde: 27/02/2008 08:03:21
Mensagens: 3
Offline

Não foi dado Fetch ou Join na tabela que possui o campo necessário.
nbluis
GUJ Master
[Avatar]

Membro desde: 27/05/2006 01:31:51
Mensagens: 1531
Localização: Porto Alegre - RS
Offline

http://www.guj.com.br/posts/list/78781.java

Luis Eduardo Bohrer

Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
[WWW]
Hammer
JavaGuru

Membro desde: 13/11/2006 17:10:39
Mensagens: 246
Offline

bem, esse seu topico foi de grande ajuda

acontece que estou fazendo varias tentativas e nada dando certo ainda

estou fazendo uma chamada aosatributos que eu uso e continua o mesmo erro.

não fechei a sessão no final e coninua dando o mesmo erro.

o que é estranho é que tenho varios metodos semelhantes, e somente esse da esse erro, pq será?
[MSN]
Hammer
JavaGuru

Membro desde: 13/11/2006 17:10:39
Mensagens: 246
Offline

qd modifico fazendo a xamada do campos do objeto antes de fechar a sessao o erro "could not initialize proxy - no Session" fica dando agora na xamado do metodo para consultar a tabela e nao qd vou consultar algum campo do objeto
[MSN]
Paulo Silveira
Administrador
[Avatar]

Membro desde: 07/08/2002 18:38:50
Mensagens: 4204
Localização: São Paulo
Offline

Ola Hammer e Ronildo

Essa exception ocorre porque voce fechou a sessão do hibernate (ou entitymanager do JPA usando hibernate). Provavelmente voces estao fechando a sessao/entityManager antes de renderizar a pagina, isso é, antes de fazer o dispatch!


http://blog.caelum.com.br twitter: @paulo_caelum


[Email] [WWW]
Hammer
JavaGuru

Membro desde: 13/11/2006 17:10:39
Mensagens: 246
Offline

bem, acontece q tenho uma classe dao q tem esse metodo que consulta a tabela do banco e retorna um list

na minha classe que tem os componentes swing eu xamo esse metodo e quando tento ver qualuer campo do objeto, menos o id, ele da esse erro

acontece q tenho varios metodos mt semelhantes, so mudando os objetos que sao retornados de acordo com oq eu kero, e soh esse esta dando problema, nada de muito difente
[MSN]
Hammer
JavaGuru

Membro desde: 13/11/2006 17:10:39
Mensagens: 246
Offline

e como assim fechar a sessão antes de redenrizar a pagina?

ja tentei abrir uma sessao antes de chamar o metodo, e ainda continua dando o mesmo erro, sinceramente nao sei o que esta acontecendo.
[MSN]
Hammer
JavaGuru

Membro desde: 13/11/2006 17:10:39
Mensagens: 246
Offline

como verifico se a pagina ja redenrizou? alguem pode me ajudar nesse caso?
[MSN]
klebernss
Thread.start()
[Avatar]

Membro desde: 27/01/2008 19:36:33
Mensagens: 25
Localização: guarujá - sp
Offline

Cara, é o seguinte...
Quando você faz um Select ou um List no Hibernate, a coleção retornada fica presa na sessão e só está populada enquando a sessão (SessionFactory) estiver aberta.

A solução que eu encontrei foi colocar a coleção em um objeto fora da Session factory.

Exemplo de Select:
public Papel Select(String pk) throws Exception{
Session session = factory.openSession();
Papel papel = (Papel)session.load(Papel.class, pk);
Papel ret = new Papel();
ret.setNome(papel.getNome());
ret.setDescricao(papel.getDescricao());
session.flush();
session.close();
return ret;
}

Exemplo de List:
public List<Papel> List(String condicao) throws Exception{
Session session = factory.openSession();
List<Papel> papeis = session.createQuery(condicao).list();
session.flush();
session.close();
return papeis;
}


I hope I've been helpfull, rsrsrs!!!

Vixe... um desenvolvedor dot net querendo virar a casaca. Tô adorando o JAVA.
[Email] [WWW] [MSN]
carlosbezerralopes
HelloWorld
[Avatar]

Membro desde: 10/04/2011 13:11:00
Mensagens: 11
Localização: Fortaleza CE
Offline

Olá,

Só pra compartilhar a minha resolução ...
achei melhor fazer assim...
no meu caso estou usando um DAO generico...



--
Atenciosamente,

Carlos Bezerra Lopes
[WWW] [MSN]
Jardel.morais
Thread.start()
[Avatar]

Membro desde: 06/03/2008 22:22:44
Mensagens: 35
Offline

Paulo Silveira wrote:Ola Hammer e Ronildo

Essa exception ocorre porque voce fechou a sessão do hibernate (ou entitymanager do JPA usando hibernate). Provavelmente voces estao fechando a sessao/entityManager antes de renderizar a pagina, isso é, antes de fazer o dispatch!




O meu problema foi resolvido com essa dica!!

Obrigado

Site: www.jardelmorais.com
msn: jalwais23@hotmail.com
rycmaster
Entusiasta Java
[Avatar]

Membro desde: 21/11/2007 15:45:44
Mensagens: 16
Offline

Eu tive o mesmo problema e resolvi simplesmente mudando o FetchType de LAZY para EAGER na entidade:

ai o erro parou de acontecer. =)
[MSN]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team