ユーザーがcombo_pedido_tipoplm selectOneMenuの1つのオプションを選択したときに、別のselectOneMenuを更新する必要があります。ユーザーが「Chose One」オプションを選択した場合、2 番目のオプションをクリアする必要があります。
すべてを試しましたが、h:selectOneMenu からオプション "Chose one" (Selecione) を選択した後、actionListener を呼び出すことができません。
XHTML
<h:selectOneMenu id="combo_pedido_tipoplm" value="#mBeanManterPedido.tipoPlacaMaeFiltro}" required="true" disabled="#{!mBeanManterPedido.pedidoValido or mBeanManterPedido.clonado}">
<f:selectItem itemLabel="#{msgTemplate.lblSelecione}" />
<f:selectItems value="#{mBeanManterPedido.selectItemsTipoPlacaMae}" />
<p:ajax event="change" listener="#{mBeanManterPedido.tipoPlacaMaeChange}" process="@this"/>
</h:selectOneMenu>
MBean
private TipoPlacaMae tipoPlacaMaeFiltro;
public void popularTipoPlacaMae() {
this.selectItemsTipoPlacaMae = new ArrayList<SelectItem>();
for (TipoPlacaMae tipoplaca : TipoPlacaMae.values()) {
this.selectItemsTipoPlacaMae.add(new SelectItem(tipoplaca, tipoplaca.getNome()));
}
UtilsCommon.orderByLabel(selectItemsTipoPlacaMae);
}
public void tipoPlacaMaeChange(AjaxBehaviorEvent e) {
// deseleciona a PlacaMae atualmente selecionada.
pedido.setPlacaMae(null);
limparDadosPedido();
popularPlacaMae();
}
「Chose one」オプションを選択すると、この selectOneMenu が再クエリされ、tipoPlacaMaeFiltro のセッターが呼び出されないため、検証エラーが発生しました。
<?xml version='1.0' encoding='UTF-8'?>
{"validationFailed":true}
私はそれについて何ができますか?