Komponen berbeda dalam kolom yang sama dalam tabel data di JSF 2.0

Apakah mungkin untuk memiliki tipe komponen yang berbeda dalam satu kolom di tabel data menggunakan JSF 2.0?

Persyaratan saya adalah berdasarkan nilai kolom label, kolom value akan memiliki teks input atau daftar pilihan yang sesuai.

Saat ini saya sedang mencoba melakukan ini melalui backing bean. Saya memiliki label, value dan type of component (misalnya "daftar pilihan") di arraylist.

Saat saya mengulangi daftar ini dalam tabel data, bagaimana cara memeriksa jenisnya dan bergantung pada hasilnya, membuat daftar masukan atau pilihan?


person Rekha    schedule 19.08.2012    source sumber


Jawaban (1)


Gunakan atribut rendered dengan pengujian yang menggunakan apa pun yang Anda gunakan untuk membedakan antara masukan dan daftar pilihan.

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