Tenho um formulário com dois combos: marca e modelos.
Quando eu seleciono a marca o sistema deve atualizar o campo modelos com os modelos de tal marca.
O código:
<h:selectOneMenu value="#{veiculo.marca}">
<f:selectItems value="#{veiculo.marcas}"/>
</h:selectOneMenu>
<h:selectOneMenu value="#{veiculo.modelo}" onchange="this.form.submit()">
<f:selectItems value="#{veiculo.modelos}"/>
</h:selectOneMenu>
...
public void setMarca(String marca) {
this.marca = marca;
}
public SelectItem[] getModelos() {
return fachada.getModelos(this.marca);
}
...
O problema é que não há garantia na execução dos métodos. As vezes executa o getModelos antes do setMarca. Tem uma maneira de garantir que primeirio irá executar setMarca para depois dar um getModelos?
Ou tem alguma outra maneira de implementar esta funcionalidade?