Bonjour,
Je crée un tableau dont le nom des colonnes correspond aux clés d un HashMap et les valeurs dans les lignes au champ valeur de ma HashMap.
Voici une modélisation simplifiée de ma structure pour que vous compreniez mon problème :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4List<MesObjets> - date - hashMap clé/valeur
Pour créer ma ligne de titre et ma première ligne je fais :
Lors de l'affichage rien ne va.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 <% [...] List<MesObjets> obj = liste.getMesObjets(); Iterator itLignes = obj.iterator(); if(itLignes.hasNext()){ //je crée la ligne de titre + la première ligne %> <tr style="CenterWhiteLabel"> <td>Date</td> <% //on crée la boucle pour les colonnes MesObjets maLigne = (MesObjets)itLignes.next(); HashMap Map = maLigne.getListTextValeur(); Set lesEntrees = Map.entrySet() ; Iterator itCol = lesEntrees.iterator() ; while ( itCol.hasNext()) { Map.Entry e=(Map.Entry) itCol.next(); %> <td><%=e.getKey()%></td> <% } itCol.remove(); %> </tr> <!-- premiere ligne --> <tr><td><%=maLigne.getDate()%></td> <% //pour la premiere ligne de valeurs Iterator itCol2 = lesEntrees.iterator() ; while ( itCol2.hasNext()) { Map.Entry e=(Map.Entry) itCol2.next(); %> <td><%=e.getValue()%></td> <% } itCol2.remove(); %> </tr>
J'ai juste une colonne nommée date qui apparait avec dans la première ligne la date. Mais mes colonnes "dynamiques" n'apparaissent pas.
Cependant je suis sure d avoir les bonnes valeurs dans les objets e car en mode debug j ai bien les bonnes valeurs dans Key et Value lorsque je parcours les while.
Merci d avance de votre aide.
Partager