[RichFaces] Problème d'utilisation de JSTL
Bonjour,
J'ai un problème avec l'utilisation de JSTL quand j'utilise RichFaces.
Je veux faire fonctionner les tests inclus dans une balise <c:choose> mais ils ne veulent pas fonctionner:
Code:
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
| <rich:dataList var="count" value="#{managedBean.counts}" id="msgdatalist">
<h:outputText value="#{count.node}" style="text-decoration:underline;"/><br/>
<h:outputText value="Value: " styleClass="label" style="font-weight:bold;"></h:outputText>
<h:outputText value="#{count.value}"/><br/>
<h:panelGroup>
<c:choose>
<c:when test="${count.nodeType==2}">
<h:form><h:graphicImage value="#{count.fullImageValvePath}"/><br/>
</h:form>
</c:when>
<c:when test="${count.nodeType==3}">
<div style="background-image:url(../images/reservoir.jpg); height:48px; width:64px">
<div>
<rich:progressBar value="#{count.value}" minValue="0" maxValue="#{count.maxVolume}"/>
</div>
</div>
</c:when>
<c:when test="${count.nodeType==1}">
<div style="background-image:url(../images/pump.jpg); height:64px; width:64px">
<div>
<rich:progressBar value="#{count.value}" minValue="0" maxValue="#{count.maxFlow}"/>
</div>
</div>
</c:when>
<c:otherwise>
<p>Rien</p>
<h:outputText value="#{count.nodeType}"/><br/>
<h:outputText value="1 #{count.nodeType == 1}"/><br/>
<h:outputText value="2 #{count.nodeType == 2}"/><br/>
<h:outputText value="3 #{count.nodeType == 3}"/>
</c:otherwise>
</c:choose>
</h:panelGroup>
<br/>
<h:outputText value="Time: " styleClass="label" style="font-weight:bold;"></h:outputText>
<h:outputText value="#{count.time} "/><br/>
</rich:dataList> |
Quand par exemple count.nodeType == 2, le test <c:when test="${count.nodeType==2}"> semble ne pas réussir: la page m'affiche ce qu'il y a entre les balises otherwise: il m'affiche le texte Rien, la valeur de nodeType (et c'est bien la valeur 2 qu'il m'affiche) et 3 booléens (et pour #{count.nodeType == 2} il m'affiche bien true).
En clair jstl n'évalue pas mes conditions, contrairement à jsf.
Le pire, c'est que dans une autre page j'ai un test jstl analogue qui marche très bien (et j'utilise là aussi dans la même page du jsf).
Est-ce que ça peut provenir d'un problème de compatibilité avec une balise richfaces? Du genre parce que j'ai mis du jstl entre les balises rich:dataList ?
J'ai bien mis xmlns:c="http://java.sun.com/jstl/core" en haut de la page.