Pessoal tenho um campo id e quando sair dele quero buscar os dados e popular os dados na tela. Alguem sabe como posso fazer isso. Nao estou conseguindo popular os dados na tela. Vai para o servidor mas nao dá refresh na tela com os dados buscados. Ai vai o código abaixo
Client
<h:form id="form">
<a4j:region>
<h:panelGrid columns="1">
<h:messages layout="table"></h:messages>
</h:panelGrid>
<h:panelGrid columns="3" title="Cadastro de Produto">
<h:outputText value="ID"></h:outputText>
<h:inputText binding="#{cadProduto.id}" maxlength="15"
required="true" requiredMessage="Id deve ser preenchido">
<a4j:support event="onblur"
action="#{cadProduto.Find}" reRender="nome, teste1, teste2, teste3"></a4j:support>
</h:inputText>
<h:message for="id" showDetail="true"
showSummary="false"></h:message>
<h:outputText value="Nome"></h:outputText>
<h:inputText id="nome" binding="#{cadProduto.nome}" maxlength="40"
required="true" requiredMessage="Nome deve ser preenchido">
</h:inputText>
<h:message for="nome" showDetail="true"
showSummary="false"></h:message>
<h:outputText value="Valor"></h:outputText>
<h:inputText id="valor" binding="#{cadProduto.valor}"
maxlength="18" required="true"
requiredMessage="Valor deve ser preenchido">
<f:convertNumber maxIntegerDigits="16" maxFractionDigits="2" />
</h:inputText>
<h:message for="valor" showDetail="true"
showSummary="false"></h:message>
…
server
public void Find() {
ProdutoPrdDAO pdao = new ProdutoPrdDAO();
ProdutoPrd p = new ProdutoPrd();
p = (ProdutoPrd) pdao.findById("1");
if (p != null) {
id.setValue( p.getPrdId() );
nome.setValue( p.getPrdNome() );
valor.setValue( p.getPrdValor() );
}
}
entra no método busca os dados mas nao está aparecendo na página