rich:tabPanel et c:foreach combiné qui marche pas
Bonjour tout le monde,
Je n'arrive pas à faire fonctionner correctement c:foreach (taglib JSTL) dans mon application web (JSF 1.2_13, Hibernate 3, Richface 3.3.2 et JSTL 1.2)
J'ai obtenu deux résultats différents (qui ne font pas planter l'application):
- le premier n'effectue pas réellement la boucle car j'obtiens qu'un onglet
Code:
1 2 3 4 5 6 7 8 9 10
|
<rich:tabPanel>
<core2:forEach items="#{BeanAccueil.objetsPages3}" var="statut" varStatus="index">
<rich:tab name="#{statut.nomStatut}">
<core:facet name="label">
<html:outputText value="#{statut.nomStatut}" />
</core:facet>
</rich:tab>
</core2:forEach>
</rich:tabPanel> |
- le second génére bien le bon nombre d'onglet mais ne me permet pas de mettre de titre à mes onglets
Code:
1 2 3 4 5 6 7 8 9 10
|
<rich:tabPanel>
<core2:forEach items="${BeanAccueil.objetsPages3}" var="statut" varStatus="index">
<rich:tab>
<core:facet name="label">
<html:outputText value="#{statut.nomStatut}" />
</core:facet>
</rich:tab>
</core2:forEach>
</rich:tabPanel> |
Remarque:
- si je remplace #{statut.nomStatut} par "test", ca va bien dans l'onglet
- si je le remplace <html:outputText value="#{statut.nomStatut}" /> par <core2:out value="${statut}"/> cette fois ca va dans le corps du tab
Il est possible que la JSTL soit mal installée dans mon application, donc si quelqu'un peut me donner les étapes pour JSF 1.2 (j'ai pas trouver comment le paramétré dans mon web.xml pour JSF 1.2 mojarra)
J'aimerais savoir aussi la différence entre les ${monBean.variable} et les #{monBean.variable}.
Et biensur si quelqu'un peut me donner un coup de pouce ca serait génial, car j'ai regarder pas mal de truc sur google et je n'arrive pas à les reproduire.
remplacer un foreach par une scriplette
Bon tant pis j'abandonne le foreach qui me pause vraiment trop de problème. Grrrrrr.
J'aimerais remplacer se foreach par une scriplette, mais je sais pas comment récupérer la variable BeanAccueil et la variable obtenu par ma scriplette pour l'utiliser plutard dans mes tag. Afin d'être plus claire, voici en gros se que je veux faire
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
<rich:tabPanel>
<%
BeanAccueil accueil = (BeanAccueil) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("BeanAccueil");
for (Statut statut : accueil.getObjetsPages3())
{
%>
<rich:tab action="index">
<core:facet name="label">
<html;outputText value="#{statut.nomStatut}"/>
</core:facet>
</rich:tab>
<%
}
%>
</rich:tabPanel> |
donc mes des questions:
- on recupère bien le benAccueil courant comme ca?
- comment récupéré l'iterateur (statut) de la boucle pour l'utiliser dans un tag comme dans le html:outputText?