I need to make my inputs automatically populated, after combo selection. I have already done the method to go through the database and retrieve the necessary information, however it does not fill ... Can anyone help me? I believe that due to the update of ajax, but I do not know how to update the form ...
index.xhtml
<h:form id="formGeral" prependId="false">
<h:panelGrid id="panelDados" columns="4" cellpadding="8">
<p:outputLabel class="lt" value="Projeto:" />
<p:selectOneMenu value="#{usuarioBean.projeto.codigo}"
required="true" requiredMessage="O campo 'Projeto' é obrigatório.">
<f:selectItem itemLabel="Selecione o projeto" itemValue="" />
<f:selectItems value="#{projetoBean.projetos}" var="projeto"
itemLabel="#{projeto.projeto}" itemValue="#{projeto.codigo}" />
<f:ajax listener="#{usuarioBean.popularProjeto}"
update=":formGeral" />
</p:selectOneMenu>
<p:outputLabel class="lt" value="Superior Imediato:" />
<p:inputText id="superiorImediato"
value="#{usuarioBean.recebeSuperior}" />
<p:outputLabel class="lt" value="Tipo projeto:" />
<p:inputText id="tipoProjeto"
value="#{usuarioBean.recebeTipoProjeto}" />
</h:panelGrid>
</h:form>
method to recover data:
public void popularProjeto() {
try {
if (projeto != null) {
Projeto recebeProjeto = projetoDAO.buscarPorCodigo(projeto.getCodigo());
recebeSuperior = recebeProjeto.getProjeto();
recebeTipoProjeto = recebeProjeto.getTipo();
System.out.println(recebeSuperior);
System.out.println(recebeTipoProjeto);
}
} catch (Exception e) {
e.printStackTrace();
}
}