Различные компоненты в одном столбце в таблице данных в JSF 2.0

Возможно ли иметь разные типы компонентов в одном столбце таблицы данных с использованием JSF 2.0?

Мое требование состоит в том, что на основе значения столбца label столбец value будет иметь входной текст или список выбора соответственно.

В настоящее время я пытаюсь сделать это с помощью поддерживающего компонента. У меня есть label, value и type of component (например, «список выбора») в arraylist.

Когда я повторяю этот список в таблице данных, как мне проверить тип и в зависимости от результата создать либо список ввода, либо список выбора?


person Rekha    schedule 19.08.2012    source источник


Ответы (1)


Используйте атрибут rendered с тестом, который использует то, что вы используете, чтобы различать ввод и список выбора.

E.g.

<h:dataTable value="#{yourBacking.yourList} var="item">
    <h:column>
        <h:inputText value="#{item.value}" rendered="#{item.type == 'input'}" />
        <h:selectOneMenu value="#{item.value}" rendered="#{item.type == 'selectlist'}">
            <f:selectItems value="#{item.values}" />
        </h:selectOneMenu>
    </h:column>
</h:dataTable>
person Arjan Tijms    schedule 19.08.2012