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 :

Souci avec la jstl et jsf


Sujet :

JSF Java

  1. #1
    Membre confirmé
    Homme Profil pro
    Expert MDE
    Inscrit en
    Janvier 2008
    Messages
    183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Expert MDE
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 183
    Par défaut Souci avec la jstl et jsf [resolu]
    Bonjour à tous,

    Je ne comprend pas pourquoi le tag c:forEach ne fonctionne pas chez moi.

    J'utilise eclipse, j'ai cree un projet jsf 1.2 auquel j'ai ajouté les librairies jstl de jboss, richfaces, tomahawk.

    dans mon menu principal j'ai le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <%@taglib
        uri="http://java.sun.com/jstl/core" prefix="c"%>
    et une iteration comme suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <c:forEach items="#{objetBean.all}" var="objet">
        <h:outputText value="#{objet.name}"></h:outputText>
    </c:forEach>
    et cela ne fonctionne pas...

    Faut il que je rajoute des choses dans web.xml? ailleurs?

  2. #2
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Bonjour,

    Cela ne fonctionne pas ? Quel est le rendu ?
    Peux-tu nous montrer le code de la méthode getAll() du bean objetBean ?
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  3. #3
    Membre confirmé
    Homme Profil pro
    Expert MDE
    Inscrit en
    Janvier 2008
    Messages
    183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Expert MDE
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 183
    Par défaut
    les outputText n'affichent rien...
    getAll retourne une collection de mes objets d'objet
    (fait appel à une fonction de mon ejb stateless: return em.createQuery("from objet o").getResultList().
    Cette fonction fonctionne tout à fait bien car j'arrive à afficher la liste ailleurs. j'ai vu que les tag EL de la jstl sont de la forme ${} tandis que ceux de jsf #{} ça vient peut etre de là...
    Est-ce que quelqu'un saurait comment integrer des tags jsf dans un forEach?

    Une autre solution est de faire un binding sur mon panelMenuGroup (ce que je vais certainement faire.
    Les iterations ui:repeat ne fonctionnent pas car ça ne peut pas etre contenu dans un panelMenuGroup.

    Enfin si quelqu'un pouvait apporter la réponse, ça me serait d'une grande aide pour la suite.

    Merci, tcharl

  4. #4
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Citation Envoyé par Tcharl Voir le message
    Cette fonction fonctionne tout à fait bien car j'arrive à afficher la liste ailleurs. j'ai vu que les tag EL de la jstl sont de la forme ${} tandis que ceux de jsf #{} ça vient peut etre de là...
    surement pas, c'est la même chose..
    et si tu nous montrais ton code de la méthode getAll.

  5. #5
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    #{...} et ${...} sont exactement la même chose si tu utilises JSF 1.2.
    Dans le cas de JSF 1.1, il y a une différence subtile qui ne saurait expliquer ton problème de toutes façons...
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  6. #6
    Membre confirmé
    Homme Profil pro
    Expert MDE
    Inscrit en
    Janvier 2008
    Messages
    183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Expert MDE
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 183
    Par défaut
    Ma fonction getAll tant attendue:
    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
     
    public Collection<MonObjet> getAll(){
    		return this.getGestionMonObjet().getAllMonObjet();
    	}
     
    private GestionMonObjet getGestionMonObjet() 
    	{
    		GestionMonObjet gu=null;
    		InitialContext ctx;
    		try {
     
    			ctx = getInitialContext();
    			gu=(GestionMonObjet) ctx.lookup("GereTonMonObjet/GestionMonObjetBean/remote");
    			return gu;
    		} catch (Exception e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
     
    		return gu;
    	}
     
    	@SuppressWarnings("unchecked")
    	private static InitialContext getInitialContext() throws Exception{
    		Hashtable props=new Hashtable();
    		props.put("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
    		props.put("java.naming.factory.url.pkgs", "org.jboss.naming:org.jnp.interfaces");
    		props.put("java.naming.provider.url", "localhost");
    		return new InitialContext(props);
    	}
    n.b: GereTonMonObjet est mon EAR...


    Dans mon EJB sateless (GestionMonObjetBean):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public Collection<MonObjet> getAllMonObjet() {
    		return (Collection<MonObjet>)em.createQuery("from MonObjet m").getResultList();
    	}
    J'ai aussi la petit interface GestionMonObjet de type Remote.

    Et l'Entity MonObjet avec la propriété name, ses getter, ses setter...

    Jsf 1.2par la même

  7. #7
    Membre éclairé Avatar de VirageGroup
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 81
    Par défaut
    Il me semble qu'il y a bien un différence entre les expression ${} et #{}.
    Le premier est un "runtime expressions" alors que dans le second cas on parle de "deferred-value".

    Or les tags JSTL 1.1 ne permettent pas tous
    1) d'utiliser des deferred-value
    2) d'interpreter les deferred-value contenues dans le corps du tag
    en particulier c:foreach

    Il doit falloir utiliser la version 1.2 de la jstl

    http://jcp.org/aboutJava/communitypr...geLog_PFD.html

    VG

  8. #8
    Membre expérimenté
    Inscrit en
    Mai 2004
    Messages
    335
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 335
    Par défaut
    utilise Facelet et tu vas te debarasser de plusieurs problèmes

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

Discussions similaires

  1. Soucis avec SVG et JSF
    Par lahobah dans le forum JSF
    Réponses: 2
    Dernier message: 09/05/2014, 10h37
  2. utiliser JSTL avec des données de JSF
    Par solawe dans le forum JSF
    Réponses: 2
    Dernier message: 06/03/2007, 23h57
  3. quelques soucis avec word 2000
    Par ramchou dans le forum Word
    Réponses: 3
    Dernier message: 06/09/2004, 18h13
  4. [DEBUTANT] petits soucis avec un prgm de chat
    Par LechucK dans le forum MFC
    Réponses: 8
    Dernier message: 19/01/2004, 16h52
  5. Réponses: 4
    Dernier message: 16/02/2003, 12h16

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