IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JSF Java Discussion :

[RichFaces] Problème d'utilisation de JSTL


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 74
    Par défaut [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 : 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
    <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.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    426
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 426
    Par défaut
    Bonjour,
    pour l'affichage des composants, je te conseille d'utiliser l'attribut rendered.
    par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <h:graphicImage value="#{count.fullImageValvePath}" rendered="#{count.nodeType==2}"/>

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 74
    Par défaut
    Merci, ça marche maintenant (avec rendered).

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 20/08/2010, 12h20
  2. Problème d'utilisation de Mysql avec dev-c++
    Par Watchi dans le forum Dev-C++
    Réponses: 10
    Dernier message: 06/08/2004, 14h35
  3. [cvs] problèmes d'utilisation
    Par gromite dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 29/06/2004, 17h41
  4. Problème: Requête utilisant NOT IN
    Par fages dans le forum Langage SQL
    Réponses: 4
    Dernier message: 04/05/2004, 10h18
  5. problème d'utilisation avec turbo pascal 7.0
    Par le 27 dans le forum Turbo Pascal
    Réponses: 4
    Dernier message: 03/12/2003, 10h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo