Получить компонент как объект в строке данных - PullRequest
0 голосов
/ 25 января 2012

У меня есть таблица данных 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");
    }

Теперь, если я нажимаю кнопку, кнопки в каждой строке меняютсяскрытьЭто явно не то, что я хотел.Я знаю, что это произошло, потому что кнопка в каждой строке имеет один и тот же идентификатор.

Есть ли какой-нибудь способ, которым мы могли бы извлечь фактически нажатую кнопку как объект Java в слушателе действия?

...