Accès à une case d'un tableau via l'index
Hello,
j'utilise actuellement un tableau de tableau dans mes bean, et j'aimerais pouvoir les afficher proprement avec JSF.
En clair, j'ai : un objet_1 qui contient un tableau d'objet_2. Et chaque objet_2 contient un tableau de String.
ce que j'ai réussit à faire était assez simple : j'accédais au premier tableau (provenant de l'objet_1) grace à une rich:datatable, et chaque colonne était mappée à la propriété : maList (provenant d'un objet_2). Je trichais un peu avec le getMaList en incrémentant l'index à chaque appel, de sorte qu'il sorte la valeur suivante. Si il atteint la fin, il recommence au début, par sécurité.
la méthode getMalist() provenant de objet_2 :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
public String getMaList() {
//get only one object of the ArrayList, according to the index, automatically incrmented
if ( (this.indexForGet + 1) < this.nbColumns){
this.indexForGet++;
}else{
this.indexForGet = 0;
}
}
return resultPSList.get(indexForGet);
} |
ma page JSP:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
....
......
<rich:dataTable id="datatableRF"
binding="#{monBean.view.dataTable}" value="#{monBean.listObjet}" var="element">
<rich:column>
<core:facet name="header">
<core:verbatim>1</core:verbatim>
</core:facet>
<html:outputText value="#{element.maList}"/>
</rich:column>
<rich:column>
<core:facet name="header">
<core:verbatim>2</core:verbatim>
</core:facet>
<html:outputText value="#{element.maList}"/>
</rich:column>
.....
... |
Ca marchait vraiment bien, toutes les références étaient nickel. Jusqu'à ce que j'essaye de faire des sortBy et des filterBy. Jsf ne sait plus trop ou donner de la tête, notemment pasque toutes les output des colonnes sont "textuelement" bindé au même objet maList. D'ou confusion ! :cry
Bref, j'aimerais donc changer un peu ma méthode d'accès, et je voudrais savoir si il est possible d'accéder à la valeur d'un tableau, via un output, en lui indiquant l'index ?
un peu un truc comme ca :
Code:
1 2
|
<h:outputText value="#{monBean.maList[0]}"/> |
j'ai cherché du coté des f:param, mais ce n'est pas très concluant pour l'instant...