Richfaces stellt Komponenten auf der Serverseite dar. Sie müssen also Ihren Parameter an die Serverseite übergeben. Es gibt einige Möglichkeiten, dies zu erreichen. Erstellen Sie eine versteckte Eingabe auf der Seite und verknüpfen Sie sie mit einem Flag in Ihrer Bean. So etwas wie,
class YourBean {
private boolean visible = false;
//getter,setter
}
auf der Seite,
<h:selectBooleanCheckbox id="hiddeninput" style="visibility:hidden"
value="#{yourBean.visible}"/>
<rich:component id="compid" rendered="#{yourBean.visible}" />
<a:commandButton onclick="document.getElementById('hiddeninput').checked=true"
reRender="compid"/>
Oder erstellen Sie zwei Methoden, den Flag auf wahr oder falsch setzt.
class YourBean {
private boolean visible = false;
public void makeInvisible() {
visible = false;
}
public void makeVisible() {
visible = true;
}
}
auf der Seite,
<rich:component id="compid" rendered="#{yourBean.visible}" />
<a:commandButton action="#{yourBean.makeInvisible()}" reRender="compid"/>