Duvida - Exercicios JSF

Olá pessoal

Estou tentando resolver um exercício, porém não consigo resolver este erro que esta ocorrendo ao tentar enviar um formulário.

Segue os códigos que utilizei até agora.

Desde já, agradeço a ajuda.

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIhttp://www.guj.com.br/t/duvida-exercicios-jsf/365882C "-//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">
<head>
<title>Teste</title>

</head>


<h:body>
	<h1>Novo Livro</h1>
	<h:form>
		<fieldset>
			<legend>Dados do Livro</legend>
			<h:panelGrid columns="2">
				<h:outputLabel value="Titulo:" for="titulo" />
				<h:inputText id="titulo" value="#{livroBean.livro.titulo}" />
				<h:outputLabel value="ISBN:" for="isbn" />
				<h:inputText id="isbn" value="#{livroBean.livro.isbn}" />
				<h:outputLabel value="Preco:" for="preco" />
				<h:inputText id="preco" value="#{livroBean.livro.preco}" />
				<h:outputLabel value="Data de Lançamento" for="dataLancamento" />
				<h:inputText id="dataLancamento" value="#{livroBean.livro.data}" />
				<h:commandButton value="Gravar" action="#{livroBean.livro.gravar}" />
			</h:panelGrid>
		</fieldset>
	</h:form>
</h:body>

</html>


import javax.annotation.ManagedBean;

@ManagedBean
public class livroBean {

	private Livro livro = new Livro();

	public Livro getLivro() {
		return livro;
	}

	public void gravar() {
		System.out.println("Gravando Livro" + this.livro.getTitulo());
	}

}


public class Livro {
	private String titulo;
	private String isbn;
	private double preco;
	private String data;

	public Livro() {
	}

	public String getTitulo() {
		return titulo;
	}

	public void setTitulo(String titulo) {
		this.titulo = titulo;
	}

	public String getIsbn() {
		return isbn;
	}

	public void setIsbn(String isbn) {
		this.isbn = isbn;
	}

	public double getPreco() {
		return preco;
	}

	public void setPreco(double preco) {
		this.preco = preco;
	}

	public String getData() {
		return data;
	}

	public void setData(String data) {
		this.data = data;
	}
}

O pacote da sua anotação @ManagedBean esta errado
O correto seria javax.faces.bean

E o mais correto ainda seria o @Named do CDI

1 curtida

Olá Mike,

Obrigado pela ajuda, resolveu aqui!!

Acabei utilizando o QuickFix ali, devo ter selecionado a opção errada.

Abs!