| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/05/2011 15:52:34
|
wood
JavaChild
Membro desde: 01/06/2006 12:38:40
Mensagens: 121
Offline
|
Nos exemplos, o que eu tenho visto é um @Component dando um @AutoWired em beans do Spring.
É possível fazer o contrário? A partir de um bean do Spring dar um @AutoWired em @Component's do VRaptor?
Comigo está acontecendo este erro
Em outro Post, vi que o Lucas informou que não é possível que tenha o listener RequestContextListener no web.xml pois o VRaptor já o declara (2cents, isto deveria estar na documentação).
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/05/2011 16:29:23
|
el_loko
JavaEvangelist
Membro desde: 30/10/2007 12:09:43
Mensagens: 357
Offline
|
wood wrote:Nos exemplos, o que eu tenho visto é um @Component dando um @AutoWired em beans do Spring.
É possível fazer o contrário? A partir de um bean do Spring dar um @AutoWired em @Component's do VRaptor?
Comigo está acontecendo este erro
Em outro Post, vi que o Lucas informou que não é possível que tenha o listener RequestContextListener no web.xml pois o VRaptor já o declara (2cents, isto deveria estar na documentação).
Boa tarde,
Não sei se entendi direito, mas você está fazendo a injeção via setter, no método setUsuarioDAO, certo?
Qual a versão do VRaptor que você está usando? Pois, acho que à partir da versão 3 a injeção via setter não é mais suportada.
De qualquer forma dá uma olhada nesse tópico: http://www.guj.com.br/java/236664-vraptor--injecao-no-field
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/05/2011 16:39:03
|
wood
JavaChild
Membro desde: 01/06/2006 12:38:40
Mensagens: 121
Offline
|
El_loko, estou usando a versão 3.3.1.
Via field também apresenta o mesmo erro.
A dúvida é: Como injetar um "bean" (@Component) do vraptor em um bean do spring?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/05/2011 18:06:24
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Online
|
Olá wood,
a partir da versão 3.3.0 dá pra injetar um bean do spring no vraptor e vice versa,
o erro é por outro motivo:
ou seja, o usuarioDAOImpl é request scoped e vc tá tentando injetá-lo em um bean singleton (ou coisa do tipo)
como o próprio erro sugere, vc pode usar scoped proxies..
anote o setter com:
se não funcionar, anote a classe UsuarioDAOImpl com essa anotação, e tudo vai funcionar.
[]'s
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/05/2011 19:33:46
|
wood
JavaChild
Membro desde: 01/06/2006 12:38:40
Mensagens: 121
Offline
|
Lucas, o problema continua.
O problema acontece especificamente pro causa da situação abaixo.
Configurando o spring-security dessa forma:
O bean usuarioManager tem a funcao de autenticação. Ele está declarado assim:
A classe UserManagerImpl faz referência a outro bean (anotado com @Component), e é no momento de injetar este bean que ocorre o erro.
This message was edited 1 time. Last update was at 17/05/2011 19:34:37
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/05/2011 20:05:30
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Online
|
o UsuarioDao não pode ser @RequestScoped então (é o default do VRaptor)
anote o UsuarioDao com @ApplicationScoped (talvez vc tenha que receber SessionFactory ao invés de Session, ou algo do tipo
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/05/2011 06:29:42
|
wood
JavaChild
Membro desde: 01/06/2006 12:38:40
Mensagens: 121
Offline
|
Não aconteceu o erro agora, mas também o bean não foi injetado
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/05/2011 09:23:31
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Online
|
o setter está com @Autowired?
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/05/2011 09:27:17
|
wood
JavaChild
Membro desde: 01/06/2006 12:38:40
Mensagens: 121
Offline
|
Está sim. Bem estranho esse novo "problema".
Final de semana eu vou isolar o problema para ver entender melhor o que está acontecendo.
Valeu Lucas.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/05/2011 10:33:03
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Online
|
só um detalhe:
se possível use o applicationContext.xml no classpath, sem listeners registrados no web.xml, daí tudo deveria funcionar sem problemas...
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/08/2011 22:18:35
|
xenevreu
Entusiasta Java
Membro desde: 04/08/2008 21:41:35
Mensagens: 24
Localização: São Paulo/SP
Offline
|
Wood,
Conseguiu resolver o problema? Estou exatamente com o mesmo cenário...
Aproveitando: Lucas, pra poder usar o spring-security precisamos declarar o filtro do spring. Neste caso, o applicationContext.xml precisa ficar dentro do WEB-INF, e não no classpath... Acha que tem alguma coisa a ver com isto?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/08/2011 22:38:50
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Online
|
se não me engano dá pra configurar o spring security para usar o applicationContext do classpath...
quais listeners vc está registrando no web.xml?
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/08/2011 22:47:05
|
xenevreu
Entusiasta Java
Membro desde: 04/08/2008 21:41:35
Mensagens: 24
Localização: São Paulo/SP
Offline
|
Meu web.xml tem somente:
A configuração do vraptor tá vindo via web-fragment.xml...
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/08/2011 22:56:33
|
Lucas Cavalcanti
GUJ Hacker
![[Avatar]](/images/avatar/5f6780632f5d27dd0cded5fc9361169e.jpg)
Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Online
|
o problema é q o VRaptor não funciona bem com esse context Loader listener (pq ele faz o mesmo trabalho)... se vc tira o listener, o security não funciona?
|
--
Caelum
www.caelum.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/08/2011 22:59:01
|
xenevreu
Entusiasta Java
Membro desde: 04/08/2008 21:41:35
Mensagens: 24
Localização: São Paulo/SP
Offline
|
Não rola... ele fica mal educado e diz:
No WebApplicationContext found: no ContextLoaderListener registered?
|
|
|
 |
|
|