JSF e Spring !  XML
Índice dos Fóruns » Ferramentas, Frameworks e Utilitários
Autor Mensagem
muldon
JavaTeenager
[Avatar]

Membro desde: 16/05/2006 14:06:03
Mensagens: 174
Offline

pessoal, dúvida basica. Tenho meu Back Bean do jsf e quero acessar um servico ( q eh uma propriedade do meu Back Bean ) e preciso q esse servico seja injetado pelo spring. Como eu faco pra ter esse servico injetado pelo spring no construtor do meu back bean ? Ja li algo sobre autowire="constructor" mas nenhum exemplo. Como vcs resolveram isso ?


Sun Certified Java Programmer 5
Diabo Loiro
GUJ Master
[Avatar]
Membro desde: 24/03/2009 07:46:14
Mensagens: 1040
Localização: Praia Grande - SP
Offline

Entao se o teu serviço tiver marcado como componente ou service ele ja deve injetar automatico com autowire, porem tem a opção do xml.

ali esta passando uma String, se usar <ref> passa outro objeto;


Sun Certified Java Associate
Sun Certified Java Programer 6.0
Sun Certified Web Component Developer
Oracle Certified Professional, Java EE 5 Business Component Developer

Blog
http://brunodanielmarinho.wordpress.com

Fals - Osum Leader
http://osum.sun.com/group/fals


muldon
JavaTeenager
[Avatar]

Membro desde: 16/05/2006 14:06:03
Mensagens: 174
Offline

entao parceiro, eu ja uso a configuracao do bean com autowire="byName". Mas acontece q o servico so eh injetado depois da chamada do construtor. Colocar a anotacao como servico resolve a injecao no momento da chamada do construtor ? Ja tentei e nao consegui, gostaria de algum exemplo se alguem tiver...

Sun Certified Java Programmer 5
Diabo Loiro
GUJ Master
[Avatar]
Membro desde: 24/03/2009 07:46:14
Mensagens: 1040
Localização: Praia Grande - SP
Offline

parece que voce tem colocar a anotação em cima do construtor...

segue exemplo.
http://springindepth.com/book/in-depth-ioc-autowiring.html

se não der tenta o xml.

Sun Certified Java Associate
Sun Certified Java Programer 6.0
Sun Certified Web Component Developer
Oracle Certified Professional, Java EE 5 Business Component Developer

Blog
http://brunodanielmarinho.wordpress.com

Fals - Osum Leader
http://osum.sun.com/group/fals


muldon
JavaTeenager
[Avatar]

Membro desde: 16/05/2006 14:06:03
Mensagens: 174
Offline

hummmm vou ler mais a respeito, acho q eh por ai mesmo amigo, vlw !!

Sun Certified Java Programmer 5
Daniel.F
GUJ Ranger

Membro desde: 29/03/2007 18:30:39
Mensagens: 909
Offline

Você está declarando seus beans do JSF pelo Spring???


[Email]
muldon
JavaTeenager
[Avatar]

Membro desde: 16/05/2006 14:06:03
Mensagens: 174
Offline

sim, estou declarando no spring e deixando a configuracao tal que o spring gerencie os beans. Tem um exemplo ai de como isso eh feito de forma q o construtor tenhas as variaveis de instancia injetadas ( servico no caso ) ?

Sun Certified Java Programmer 5
Daniel.F
GUJ Ranger

Membro desde: 29/03/2007 18:30:39
Mensagens: 909
Offline

Eu injeto desta maneira:



Não fica mais fácil??


[Email]
Diabo Loiro
GUJ Master
[Avatar]
Membro desde: 24/03/2009 07:46:14
Mensagens: 1040
Localização: Praia Grande - SP
Offline

O arquivo onde a classe é injetada esta marcador com @component?

Sun Certified Java Associate
Sun Certified Java Programer 6.0
Sun Certified Web Component Developer
Oracle Certified Professional, Java EE 5 Business Component Developer

Blog
http://brunodanielmarinho.wordpress.com

Fals - Osum Leader
http://osum.sun.com/group/fals


muldon
JavaTeenager
[Avatar]

Membro desde: 16/05/2006 14:06:03
Mensagens: 174
Offline

nossa Daniel.F beeeemmm mais facil heim. Mas essa annotation deve ficar logo acima da variavel de instancia ? Essa declaracao dessa forma injeta o bean no momento do construtor do Back Bean ? So estou perguntando pq nao tenho como testar aqui onde estou, mas to muito curioso !!! Sei tb q tem uma configuracao de component-scan no xml do spring certo ?

Sun Certified Java Programmer 5
Diabo Loiro
GUJ Master
[Avatar]
Membro desde: 24/03/2009 07:46:14
Mensagens: 1040
Localização: Praia Grande - SP
Offline

acabei de confirmar com um amigo aki colocar autowire em cima do contrutor faz a injeção pelo contrutor mesmo testa quando puder.

Sun Certified Java Associate
Sun Certified Java Programer 6.0
Sun Certified Web Component Developer
Oracle Certified Professional, Java EE 5 Business Component Developer

Blog
http://brunodanielmarinho.wordpress.com

Fals - Osum Leader
http://osum.sun.com/group/fals


muldon
JavaTeenager
[Avatar]

Membro desde: 16/05/2006 14:06:03
Mensagens: 174
Offline

Diabo Loiro no meu caso nao, pois se trata de um Back Bean. Deveria eu entao colocar esse back bean como @Component ? Agora com tantas sugestoes estou confuso de como deveria ficar no final das contas. Seria isso ?


Sun Certified Java Programmer 5
Diabo Loiro
GUJ Master
[Avatar]
Membro desde: 24/03/2009 07:46:14
Mensagens: 1040
Localização: Praia Grande - SP
Offline

testa la e depois posta

Sun Certified Java Associate
Sun Certified Java Programer 6.0
Sun Certified Web Component Developer
Oracle Certified Professional, Java EE 5 Business Component Developer

Blog
http://brunodanielmarinho.wordpress.com

Fals - Osum Leader
http://osum.sun.com/group/fals


muldon
JavaTeenager
[Avatar]

Membro desde: 16/05/2006 14:06:03
Mensagens: 174
Offline

vou testar apos o almoco e já posto o resultado. Pessoal muito obrigado pelas dicas !

This message was edited 1 time. Last update was at 03/11/2010 10:35:57


Sun Certified Java Programmer 5
Daniel.F
GUJ Ranger

Membro desde: 29/03/2007 18:30:39
Mensagens: 909
Offline

No seu caso vc tem que chamar o carregar lista após a injeção, então proceda da seguinte forma:


Qualquer coisa, fala ai, mas que que resolve.
Você tem que configurar para scanear o pacote que contém a implementação de seu service, com anotação @Component.


[Email]
 
Índice dos Fóruns » Ferramentas, Frameworks e Utilitários
Ir para:   
Powered by JForum 2.1.8 © JForum Team