Exemplo formulario consulta JSF

Pessoal,
estou com muitas duvidas quanto a fazer uma tela de consulta usando JSF, alguem de voces nao teria algum material de exemplo para eu poder saber como que eu posso fazer um formulario desses.

Agradeço qualquer ajuda. Abraços.

Olá Carlos,

Siga a idéia:

Propriedades:
Lista com os resultados
Objeto com critérios

Ações:

  • pesquisar - seta nulo aos resultados

Getters

  • getResultados - Se a lista estiver nula chama um dao da vida que seleciona de acordo com critérios de seleção. Se você usa hibernate, tem a Classe Example que seta os itens no criteria para você.

:okok:

Ola Marcos, entao tenho uma pagina que eu fiz aqui, analise ela para min e veja o que eu estou fazendo errado.

<p>//Valor(ID) que eu quero passar como referencia para a consulta.
<h:outputLabel for="inputCodigo" value="Digite o ID:"id="lblCodigo"/>
<h:inputText id="inputCodigo" value="#{produto.id}" required="true"/>
<h:message for="inputCodigo" 	id="erroCodigo" style="color: red;"/>
</p>
//Os campos onde eu queria que retornasse do DAO.
<p>
<h:outputLabel for="outputID" value="ID"/>
<h:outputText id="outputID"  style="color: red;" value="#{produto.id}"/>
</p>
<p>
<h:outputLabel for="outputNome" value="NOME"/>
<h:outputText id="outputNome" style="color: red;" value="#{produto.nome}"/>
</p>
<p>
<h:outputLabel for="outputDescricao" value="DESCRIÇAO"/>
<h:outputText id="outputDescricao" style="color: red;" value="#{produto.descricao}"/>
</p>
<p>
<h:outputLabel for="outputValor" value="VALOR"/>
<h:outputText id="outputValor" style="color: red;" value="#{produto.valor}"/>
</p>
<p>
<h:commandButton id="cmdConsulta" action="#{produto.consulta}" value="Consultar"/>
</p>

Segue aqui o bean que eu estou usando. Mas o problema está em que ele nao recebe o valor que vem da tela, no caso o Id de referencia.

public void consulta(Long ide){
	dao = new ProdutoDAO();
	System.out.println("Numero do ID: " + ide);
		
	Produto produto = (Produto) dao.consulta(ide);
	//estava achando que assim ligaria com a tela uma vez que
	// é um bean gerenciado, mas nao funcionou.
	id = produto.getId();
	nome = produto.getNome();
	descricao = produto.getDescricao();
	valor = produto.getValor();
}

O que eu precisaria fazer para que os valores fossem passados da tela para o DAO(ID) e do DAO para a tela(Objeto)
Agradeço qualquer ajuda.

Olá,

Em JSF você não tem: public void consulta(Long ide){ ou seja você não passa parâmetros para funções, como fazer isto? Simples crie propriedade e vincule seus componentes a elas.

TODA action segue: public String nomeAction(){... return outcome;}

onde o outcome é sua condição de saída que pode ser tratada como um navigation case no faces-config.

:okok: