リスナーを持つap:ajaxを持つ複数の入力フィールドがあります。それらはすべて同じリスナーに接続します。どのコンポーネントがリスナーをトリガーしたかをどのように知ることができますか?
<h:inputText id="postalCode" size="20" value="# businessPartner.primaryAddress.postalCode}"
<p:ajax event="change" listener="#{businessPartner.primaryAddress.retrievePostalCodeCity}" >
</p:ajax>
</h:inputText>
<h:inputText id="city" size="60" value="# businessPartner.primaryAddress.city}"
<p:ajax event="change" listener="#{businessPartner.primaryAddress.retrievePostalCodeCity}" >
</p:ajax>
</h:inputText>
public void retrievePostalCodeCity() throws MWSException {
int country = address.getCountryId();
String postalCode = address.getPostalCode();
String city = address.getCity();
}
以前はa4jajaxを使用していたため、この問題が発生しましたが、プロジェクトを完全にプライムフェイスに移動し、リッチフェイスではなくなりました。a4jのリスナーにはAjaxBehaviorEventイベントがあり、そこでevent.getComponent()。getId()を実行できます。
プライムajaxで同じことをするにはどうすればよいですか?