Sprnig não instancia beans  XML
Índice dos Fóruns » Desenvolvimento Web
Autor Mensagem
antoniopopete
Virtual Machine Man

Membro desde: 27/12/2006 02:37:31
Mensagens: 712
Localização: Salvador - BA
Offline

Estou tentando fazer a arquitetura jsf 1.2 + spring 2.5 + hibernate 3.2 funcionar só que parece que estou comendo mosca em algum ponto porque o spring não está criando os beans, porque no faces ele informa NPE nas classes de services, nos services nas classes d dao, e nos daos no template do hibernate.
Alguém sabe como resolver isso?
Segue os arquivos de configuração
applcationContext-service.xml:



applicationContext-persistence.xml

web.xml


aplicationContext-view.xml:

faces:

Antonio Lazaro

[Email]
antoniopopete
Virtual Machine Man

Membro desde: 27/12/2006 02:37:31
Mensagens: 712
Localização: Salvador - BA
Offline

Mudei o faces para isso:

e também não resolveu, mas o log do Jboss inicializa o Sprgin/arquivos normalmente, inclusive sobe o mapeamento do hibernate.
Só não sei o que falta para que ele faça a injeção de dependência....

Antonio Lazaro

[Email]
bland
JavaEvangelist

Membro desde: 10/12/2004 09:36:35
Mensagens: 330
Offline

Antônio,

Muito estranho. Está dando algum erro ao levantar a aplicação? O Container está alegando que falta alguma lib? Mostre-nos como você está fazendo a invocação dos beans, na classe, para que possa resgatar esse beans.

Abraço.

http://www.twitter.com/almeidafabiano

Fabiano Almeida.
[MSN]
antoniopopete
Virtual Machine Man

Membro desde: 27/12/2006 02:37:31
Mensagens: 712
Localização: Salvador - BA
Offline

Eu faço a chamada na url.....
Apenas, chamo esse faces e ele dá NPE na hora da invocação do método do service.
E não sei o porque...

Antonio Lazaro

[Email]
antoniopopete
Virtual Machine Man

Membro desde: 27/12/2006 02:37:31
Mensagens: 712
Localização: Salvador - BA
Offline

Não sei porque razão o spring não inicializa meus beans, já que eu declaro o listener do mesmo no web.xml e ele carrega todos os applicationContext da vida...

Antonio Lazaro

[Email]
bland
JavaEvangelist

Membro desde: 10/12/2004 09:36:35
Mensagens: 330
Offline

Antônio,

Posta aqui o código da sua classe que você chama os XMLs e em que local está dando NPE. Se você não nos mostrar, fica ainda mais complicado poder te ajudar.

Abraço.

http://www.twitter.com/almeidafabiano

Fabiano Almeida.
[MSN]
antoniopopete
Virtual Machine Man

Membro desde: 27/12/2006 02:37:31
Mensagens: 712
Localização: Salvador - BA
Offline

O problema é esse,ele da NPE, quando chamo o faces


Antonio Lazaro

[Email]
bland
JavaEvangelist

Membro desde: 10/12/2004 09:36:35
Mensagens: 330
Offline

Olá Antônio!

E onde que você está fazendo a chamada para a instanciação dos beans? O Spring necessita saber em que instante você deseja instanciar os seus beans. Pelo exemplo que você mostrou, em momento algum você está instanciando o seu bean InstituicaoService. Por isso que deve estar sendo lançado NPE. Pense bem, como que o Spring irá adivinhar que você quer a instância de um determinado bean se você não fizer a invocação deste bean? O JSF já tem isso implicitamente, mas no Spring é diferente. Se você não fizer a chamada para o seu bean, com base no arquivo XML onde encontra-se o bean, por exemplo, ele não irá instanciar os beans necessários.

Caso você esteja fazendo a chamada ao seu bean em algum outro lugar, posta aqui para tentarmos te ajudar.

Abraço.

http://www.twitter.com/almeidafabiano

Fabiano Almeida.
[MSN]
antoniopopete
Virtual Machine Man

Membro desde: 27/12/2006 02:37:31
Mensagens: 712
Localização: Salvador - BA
Offline

Ele deveria instanciar meu bean com essa chamada:


Eu acho o seguinte, eu mudei para o struts 2, e com ele consigo fazer isso, porque eu não preciso fazer nada no construtor da Action, diferente do jsf que tenho que inicilizar os componentes no managed bean.
Então, ele estoura no NPE, porque ele primeiro instancia o faces, depois instancia as propriedades do faces e não tenho coo fazer o preenchimento do select combo, sem ser chamado o metodo no construtor, pelo menos até onde aprendi jsf.

Antonio Lazaro

[Email]
htota
Smalltalk

Membro desde: 23/02/2007 13:56:57
Mensagens: 2
Offline

Acesse os beans injetados pelo Spring através de seu métodos acessores (Ex: getServico) e não diretamente (this.servico) estava com o mesmo problema que você. Está aparentemente correto seu desencolvimento a explicação de porque isso ocorre eu não sei ainda mais assim funciona.
antoniopopete
Virtual Machine Man

Membro desde: 27/12/2006 02:37:31
Mensagens: 712
Localização: Salvador - BA
Offline

Valeu!Serve para uma outra oportunidade porque acabando para struts 2.

Antonio Lazaro

[Email]
 
Índice dos Fóruns » Desenvolvimento Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team