次のボタンがあります。
<h:commandButton
disabled="#{mybean.searching}"
binding="#{mybean.searchButton}"
actionListener="#{mybean.searchForLicenses}"
value="Search" />
デバッグすると、actionListener が最初に 2 回呼び出され、次に 3 回、次にクリックが 4 回呼び出されることがわかります。
リロードのたびに actionListener がもう一度登録されるようです。
Mojarra 2.1.3 (2.0.6 も試しました) と Tomcat 7 と IceFaces を使用しています。
バインディングは次のように行われます。
private javax.faces.component.UICommand searchButton;
public void setSearchButton(UICommand searchButton) {
this.searchButton = searchButton;
}
public UICommand getSearchButton() {
return searchButton;
}