Bonjour, je souhaite remplir une dataTable JSF à partir d'une liste de données. La particularité de cette liste c'est qu'elle ne contient pas des objets simples mais des objets qui contiennent eux-mêmes une liste.

Explication :

Cas classique : on itère sur une liste simple :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
<h:dataTable value="#{maListe}" var="monObjet">
     <h:column>
          <h:outPutText value="#{monObjet.attribut1}" />
     </h:column>
     <h:column>
          <h:outPutText value="#{monObjet.attribut2}" />
     </h:column>
</h:dataTable>


Dans mon cas, j'aimerais itérer ma sousListe pour pouvoir générer un nombre variable de <h:dataColumn>.

J'ai essayé d'utiliser JSTL 1.2 :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<h:dataTable value="#{maListe}" var="monObjet">
     <c:forEach items="#{monObjet.maSousListe}" var="monSousObjet"> // monSOusObjet est en fait une chaine de caractère
          <h:column>
               <h:outputText value="#{monSousObjet}" />
          </h:column>
     </c:forEach>
</h:dataTable>
Malheureusement, le moteur JSF me retourne l'erreur suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
javax.servlet.jsp.JspTagException: Don't know how to iterate over supplied "items" in <forEach>
Quelqu'un saurait-il faire face à ce problème ?