Erro Java - JSF - Prime Faces (Target Unreachable, identifier fabricanteBeanNome resolved to null)

Java

28/07/2015

Boa Tarde pessoal, sou novo em JSF e Prime Faces.
Estou tendo um problema na implementação do Bean. Quando chamo minha classe Bean dá o seguinte erro:

ul 27, 2015 5:02:16 PM com.sun.faces.context.AjaxExceptionHandlerImpl handlePartialResponseError
GRAVE: javax.el.PropertyNotFoundException: /pages/fabricanteCadastro.xhtml @31,110 actionListener="#{fabricanteBeanNome.salvarTela}": Target Unreachable, identifier 'fabricanteBeanNome' resolved to null

Grato pela ajuda.
Fred Leonardo

Fred Leonardo

Curtidas 0

Respostas

Robson Teixeira

Robson Teixeira

28/07/2015

Boa Tarde,
Recomendo que você veja com está o escopo do seu ManagedBean ou a forma como declarou seu ManagedBean, no atributo name da annotation @ManagedBean.

Att
Robson
GOSTEI 0
Fred Leonardo

Fred Leonardo

28/07/2015

package br.com.drogariav2.bean;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import br.com.drograriav2.util.FacesUtil;

@ManagedBean
@ViewScoped
public class FabricanteBean {

public void salvarEmTela() {

FacesUtil.addMsgInfo("Fabricante salvo com sucesso.");

}

}
GOSTEI 0
Robson Teixeira

Robson Teixeira

28/07/2015

Boa Tarde,
Conforme a codificação postada, se o atributo name da annotation @ManagedBean não for populado o JSF assume que o nome do seu ManagedBean é o nome da sua classe com primeiro carácter em minusculo.
Ai você tem 2 opções.
1) Popule o atributo name da annotation com a String fabricanteBeanNome.
Exemplo
@ManagedBean(name = "fabricanteBeanNome")
@ViewScoped
public class FabricanteBean {

public void salvarEmTela() {

FacesUtil.addMsgInfo("Fabricante salvo com sucesso.");

}

}

2)Altera seus xhtml para fabricanteBean.
Exemplo
#{fabricanteBean.salvarTela}



Att
Robson
GOSTEI 0
Fred Leonardo

Fred Leonardo

28/07/2015

//FabricanteBean.java

import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import br.com.drograriav2.util.FacesUtil;

@ManagedBean(name = "MBFabricante")
@ViewScoped
public class FabricanteBean {

public void salvarEmTela(){
FacesUtil.addMsgInfo("Fabricante salvo com sucesso.");
}
}


//fabricanteCadastro.xhtml

<h:panelGrid columns="3">
<p:commandButton value="Limpar" />

<p:commandButton value="Salvar"
actionListener="#{MBFabricante.salvarEmTela}"
update=":msgGlobal" />

<p:commandButton value="Voltar"
action="/pages/fabricantePesquisa.xhtml?faces-redirect=true" />
</h:panelGrid>



O Erro Continua....

Target Unreachable, identifier 'fabricanteBean' resolved to null
GOSTEI 0
Fred Leonardo

Fred Leonardo

28/07/2015

Resolvi , obrigado pela ajuda.


//FabricanteBean.java

@ManagedBean(name = "fabricanteBean")


eu colocando o mesmos nome da minha pagina Bean no annotation. não sei se foi isso mais funcionou.
GOSTEI 0
Michael Batista

Michael Batista

28/07/2015

estou com o mesmo problema, tentei a solução do Fred mas não deu certo só mudo o nome do problema, agora esta assim:
Não é possível criar instância para·a classe: cadastro_usuario.LoginManagedBean.
GOSTEI 0
Michael Batista

Michael Batista

28/07/2015

Será que é causado pela falta de conexão com o banco de dados?
GOSTEI 0
POSTAR