Boa noite pessoal.
Estou desenvolvendo um sistema com jsf + hibernate + primefaces, preciso que ao alterar o valor de um combo pai, que o combo dependente seja carregado com uma nova lista.
xhtml:
<h:outputLabel style="font-size: small" for="estado" value="UF:" />
<p:selectOneMenu style="font-size: small" value="#{clientesBean.cliente.acsEstado}"
id="estado" label="estado">
<p:ajax update="cidade" process="@this" listener="#{clientesBean.atualizaCidades}" />
<f:selectItem itemValue="#{clientesBean.empresa.acsEstado}" itemLabel="#{clientesBean.empresa.acsEstado.uf}"/>
<f:selectItems value="#{clientesBean.estados}" var="estado" itemLabel="#{estado.uf}" itemValue="#{estado}"/>
</p:selectOneMenu>
<h:outputText value="*" style="color:red"/>
<h:outputLabel style="font-size: small" for="cidade" value="cidade:" />
<p:selectOneMenu style="font-size: small" value="#{clientesBean.cliente.acsCidade}"
id="cidade" label="cidade">
<f:selectItem itemValue="#{clientesBean.empresa.acsEstado}" itemLabel="#{clientesBean.empresa.acsCidade.cidade}"/>
<f:selectItems value="#{clientesBean.cidades}" var="cidade" itemLabel="#{cidade.cidade}" itemValue="#{cidade}"/>
</p:selectOneMenu>
<h:outputText value="*" style="color:red"/>
o metodo listaCidades do bean:
public void atualizaCidades() {
System.out.println("ClientesBean.atualizaCidades - estado: " + cliente.getAcsEstado().getUf());
cidades = (List<AcsCidade>) session.createQuery("select c from AcsCidade c where c.acsEstado.idEstado = :idEstado").setInteger("idEstado", cliente.getAcsEstado().getIdEstado()).list();
}
Ao selecionar um estado, a combo cidade é sofre update, no entanto, o metodo do bean não é chamado. Alguém consegue ajudar?