バリデーターでオートコンプリートを取得しました。オートコンプリートに「AAA」のクエリを提出すると、「AAA」で始まる提案のリストが表示されます。私は 'AAA001'を選択し、次にバリデーターが呼び出されますが、バリデーターでは 'AAA001'と予想されます。ここでPrimefaces AutoCompleteバリデーターが間違った値を検証しています
は私のコードです:
<p:autoComplete id="codeAutoComplete"
completeMethod="#{BEAN.autoCompleteCode}"
minQueryLength="3" forceSelection="true"
value="#{OBJECT.code}"
validator="#{BEAN.validateCode}" >
<f:attribute name="object" value="#{OBJECT}" />
<p:ajax listener="#{BEAN.onCodeSelect}"
update="form"/>
</p:autoComplete>
コードは単純にゲッターとセッターと私のバリデータを持つ文字列です:
public void validateCode(FacesContext ctx, UIComponent component, Object value) {
String code = (String) value;
...
}
、即座コード=「AAA」のではなく、予想される「AAA001 ' 「AAA001」がオブジェクトにまだ設定されていないことを保証するためにオブジェクト属性を追加しましたが、期待通りにはできませんでした。
提出された値ではなく、選択した値を取得するためにできることはありますか?
おかげ