<t:columns value="#{}" var="column"> =>>>>>>>>>>dois je mettre la liste des colonnes a afficher?
Oui tu met ta liste de colonne. Par exemple une list de String.
Par contre tu ne peux pas faire
<t:columns value="#{result.MaListeDecolonne}" var="column">
il faut que tu es une liste pour les lignes et une liste pour les colonnes.
<h:outputText value="#{VALEUR?????}"/> je dois créer une methode pour extraire la valeur de la colonne courante??
tu peux utiliser cette notation
value="#maListe[index]" <==> maListe.get(index);
Dans mon cas j'ai un objet colonne qui contient le nom et l'index de la colonne
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
<t:dataTable binding="#{selectInstance.listView.datatable}" value="#{selectInstance.allInstances}" style="border-collapse: collapse;"
var="instance" >
<t:columns id="colsLI" binding="#{selectInstance.listView.columns}" var="col" value="#{selectInstance.headers}" >
<f:facet name="header">
<h:outputText value="#{col.nom}" id="labelColLI"></h:outputText>
</f:facet>
<t:commandLink
action="#{selectInstance.viewSubInstance}"
>
<t:outputText id="valueLI" value="#{instance.fieldBeanList[col.position].valueField}" >
</t:outputText>
</t:commandLink>
</t:columns>
</t:dataTable> |
tu peux utiliser aussi une hashMap (#maHashMap[key]). Met dans ce cas il faudrat que tu crée un getter qui fait une liste à partir de ta hashmap pour iterer sur les lignes.
Partager