Mensagem de ERRO: HTTP Status 500 - javax.el.PropertyNotFoundException: /livro.xhtml @19,67 action="#{LivroBean.gravar}": Target Unreachable, identifier 'LivroBean' resolved to null. Por favor alguém ajuda =D
Mensagem de ERRO: HTTP Status 500 - javax.el.PropertyNotFoundException: /livro.xhtml @19,67 action="#{LivroBean.gravar}": Target Unreachable, identifier 'LivroBean' resolved to null. Por favor alguém ajuda =D
Oi Gabriel,
O erro indica que o JSF não encontrou o ManagedBean LivroBean
.
Talvez o problema seja porque na sua página livro.xhtml
a expression language #{LivroBean.gravar}
está com a letra L em maiúsculo. tente mudar para l minúsculo:
#{livroBean.gravar}
Caso não resolva, poste aqui o código dessa sua classe, para vermos o que pode estar ocorrendo.
Bons estudos!
Obrigado desde já pela ajuda. Mudei para L minusculo e mesmo assim o erro persiste.
//código livro.xhtml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html">
<h:body>
<h1>Novo Livro</h1>
<h:form>
<fieldset>
<legend>Dados do Livro</legend>
<h:panelGrid columns="1">
<h:outputLabel value="Titulo:" for="titulo" />
<h:inputText id="titulo" />
<h:outputLabel value="ISBN:" for="isbn" />
<h:inputText id="isbn" />
<h:outputLabel value="Preço:" for="preco" />
<h:inputText id="preco" />
<h:outputLabel value="Data de Lançamento:" for="dataDeLancamento" />
<h:inputText id="dataDeLancamento" />
<h:commandButton value="Gravar" action="#{livroBean.gravar}" />
</h:panelGrid>
</fieldset>
</h:form>
</h:body>
</html>
//código Classe LivroBean
package br.com.caelum.livraria.bean;
import javax.faces.bean.ManagedBean;
@ManagedBean
public class LivroBean {
public void gravar() {
System.out.println("Gravando Livro!");
}
}
Oi Grabriel,
o seu código está certo, só falta a implementação no método gravar
.
Conseguiu avançar no treinamento?
abs