我有一个jsf数据表:
<ice:dataTable value="#{somebean.mycollections}" var="value">
<ice:column>
<ice:outputText value="#{value.title} />
</ice:column>
<ice:column>
<ice:commandLink value="hide" actionListener="#{somebean.processHide}">
<f:attribute name="value" value="#{value}" />
</ice:commandLink>
</ice:column>
</ice:dataTable>
并且在bean动作监听器中,我有:
public void processHide(ActionEvent event){
HtmlCommandLink link = (HtmlCommandLink) event.getComponent();
link.setValue("hidden");
}
现在,如果单击该按钮,则每行中的按钮都会更改为隐藏。这显然不是我想要的。我知道这发生了,因为每一行的按钮都有相同的ID。
我们有什么方法可以将实际单击的按钮检索为动作侦听器中的Java对象吗?