OpenEntityManagerInViewFilter e VRaptor  XML
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Autor Mensagem
seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

Mesmo configurando o OpenEntityManagerInViewFilter, a sessão é fechada. Como utilizá-lo integrado ao VRaptor 3.1 ?

Como faço para que ele faça parte do stack de interceptors controlados pelo VRaptor ? O VRaptor encerra a cadeia de filtros por ele gerenciados e, posteriormente, de modo que o OpenEntityManagerInViewFilter já recebe a sessão fechada, não tem como mantê-la aberta (duh)? Como ele é o próximo declarado no web.xml, deve passar por ele ou estou enganado?

Sendo assim, como o VRaptor que inicializa o Spring internamente, ele deve estar após o filter do VRaptor, como até foi sugerido para mim pelo Lucas.


Minha configuração do web.xml




Stacktrace

This message was edited 1 time. Last update was at 29/01/2010 21:40:24


@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6394
Offline

como vc está pegando as Session's nas suas classes?

se vc está usando um ComponentFactory pra isso, é só remover o método que fecha a sessão

--
Caelum
www.caelum.com.br

seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

To injetando via @PersistenceContext (estou usando EntityManager) e utilizando os utilitarios do VRaptor no SpringProvider.


Vou tentar estendendo os metodos dos componentes utilitarios que fecham a sessao e dou o feedback aqui.

Obrigado camarada

@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6394
Offline

faça o seguinte... tire os componentes utilitários do SpringProvider... se vc tá injetando via @PersistenceContext vc não vai precisar deles

--
Caelum
www.caelum.com.br

seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

Mesmo retirando qualquer utilitario do VRaptor que porventura venha a fechar a sessao ele continua o fazendo.


Esta configurando o OpenEntityManagerInView corretamente, como informa no console:





sinistro!

@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6394
Offline

tenta dar uma olhada na seção 12.6.3 desse site:

http://static.springsource.org/spring/docs/2.5.x/reference/orm.html

ve se isso te ajuda a resolver esse problema...

de qqer forma, se vc registrar os componentes da JPA do VRaptor, vc não precisa do OpenEntityManagerInViewFilter... eles já fazem isso, basta receber no construtor dos seus daos um EntityManager...

o único problema é que seu persistence-unit tem que se chamar "default" ou vc tem que estender o EntityManagerCreator e trocar o persistence-unit

--
Caelum
www.caelum.com.br

seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

Tirei todos, ta tudo gerenciado pelo Spring num arquivo application-datasource.xml

O erro persiste



@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

Lucas Cavalcanti wrote:tenta dar uma olhada na seção 12.6.3 desse site:

http://static.springsource.org/spring/docs/2.5.x/reference/orm.html

ve se isso te ajuda a resolver esse problema...

de qqer forma, se vc registrar os componentes da JPA do VRaptor, vc não precisa do OpenEntityManagerInViewFilter... eles já fazem isso, basta receber no construtor dos seus daos um EntityManager...

o único problema é que seu persistence-unit tem que se chamar "default" ou vc tem que estender o EntityManagerCreator e trocar o persistence-unit



Entendi. Eu prefiro deixar o VRaptor cuidar disso para mim. Vou fazer com que o DAO receba o entitymanager no construtor e dou o feedback.

Muito obrigado lucas!

Ps. Lembrando que estou utilizando o Spring 3.0 esta documentação é do 2.5

@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

Resolvido!

Vai valer a pena continuar insistindo no VRaptor. rs

Valeu lucas

@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
 
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Ir para:   
Powered by JForum 2.1.8 © JForum Team