| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/03/2010 22:28:53
|
boneazul
JavaGuru
Membro desde: 29/10/2007 17:13:59
Mensagens: 246
Offline
|
Pessoal tenho um componente de jobScheduler
e anotei ele como
@ApplicationScoped
só que tento injetar um Dao no construtor e ele da NullpointerException na hora de executar , acho que nesse contexto a ID nã acontece
Tem algum contexto que ele faz a injeção de dependencia??
O componente vai rodar de 10 em 10 minutos fazendo algumas validações...
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/03/2010 10:42:27
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 5632
Offline
|
vc anotou com @Component (do VRaptor) também?
aonde dá o nullpointer?
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/03/2010 12:36:12
|
boneazul
JavaGuru
Membro desde: 29/10/2007 17:13:59
Mensagens: 246
Offline
|
Lucas Cavalcanti wrote:vc anotou com @Component (do VRaptor) também?
aonde dá o nullpointer?
Lucas ta anotado com @Component sim pra fazer a injeção!!
Bom uma coisa foi erro meu , esqueci de passar no construtor por isso a NPE,mas mesmo assim o spring ta reclamando de outra coisa agora
Classes que peguei do livro de receitas para fazer a schedluer...
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/03/2010 16:21:00
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 5632
Offline
|
vc tá com os listeners configurados no web.xml? tente tirá-los...
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/03/2010 21:53:58
|
boneazul
JavaGuru
Membro desde: 29/10/2007 17:13:59
Mensagens: 246
Offline
|
Lucas Cavalcanti wrote:vc tá com os listeners configurados no web.xml? tente tirá-los...
Não entendi sua resposta de listener todo caso meu web.xml é esse ..da uma olhada..
This message was edited 1 time. Last update was at 12/03/2010 21:56:02
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/03/2010 22:45:12
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 5632
Offline
|
o problema é que vc tá usando coisas Request scoped (o Dao) dentro de algo que é ApplicationScoped (o Scheduler)
vc não pode fazer isso... pelo menos ainda não é suportado pelo vraptor...
vc vai precisar que esse dao específico seja ApplicationScoped, receba uma SessionFactory no construtor, e abra (e feche) sessões quando for conveniente..
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/03/2010 15:20:13
|
boneazul
JavaGuru
Membro desde: 29/10/2007 17:13:59
Mensagens: 246
Offline
|
Lucas Cavalcanti wrote:o problema é que vc tá usando coisas Request scoped (o Dao) dentro de algo que é ApplicationScoped (o Scheduler)
vc não pode fazer isso... pelo menos ainda não é suportado pelo vraptor...
vc vai precisar que esse dao específico seja ApplicationScoped, receba uma SessionFactory no construtor, e abra (e feche) sessões quando for conveniente..
Entendi...beleza vo deixar o componente sem Injeção e instanciar na mão mesmo passando session e dando close ja que esse componente é pouco utilizado nesse escopo e muito mais no escopo de request...
Obrigado pela ajuda..
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/03/2010 08:26:52
|
Lavieri
GUJ Master
![[Avatar]](/images/avatar/7b41bfa5085806dfa24b8c9de0ce567f.png)
Membro desde: 27/01/2004 13:39:31
Mensagens: 1851
Localização: João Pessoa / PB
Offline
|
A minha solução pra esse problema q vc tem, e que já tive...
neste caso é sua responsabilidade cuidar desta sessão e fechala corretamente, para que ela não fique a deriva aberta comendo recurso...
Obs.... se for usar, chame o NoScopedSessionCreator no construtor do seu componente...
Use a sessão dentro do proprio construtor...
feche a sessão ainda dentro do contrutor... assim vc garante que não vai deichar o recurso aberto atoa...
This message was edited 2 times. Last update was at 15/03/2010 08:29:14
|
Sun Certified Java Programmer (SCJP 6)
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
Meu blog -> http://blog.tomazlavieri.com.br/ |
|
|
 |
|
|