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 :

[JSF] probleme avec selectonemenu


Sujet :

JSF Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 7
    Points
    7
    Par défaut [JSF] probleme avec selectonemenu
    Bonjour, je ne sais pas dans quelle section je peux mettre ma question car il n'y a pas de section JSF.

    Quand j'utilise le "selectOneMenu" de la maniere suivante, il se met par defaut sur la valeur "titi". Jusque là, pas de problème. Mais quand je revisite la page, lors d'un refresh par exemple, il se met sur "toto" et ignore completement le default value... A noter que rien ne semble toucher à ce tableau écrit en dur.

    Une idée?

    Merci


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <t:selectOneMenu id="totoc" value="titi">
    	<f:selectItem itemValue="toto" />
    	<f:selectItem itemValue="tata" />
    	<f:selectItem itemValue="tutu" />
    	<f:selectItem itemValue="titi" />
    </t:selectOneMenu>

  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 : 45
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Citation Envoyé par cymp Voir le message
    Bonjour, je ne sais pas dans quelle section je peux mettre ma question car il n'y a pas de section JSF.
    Etant donné le nom du présent forum - JSF - je pense que tu es bien tombé

    Citation Envoyé par cymp Voir le message
    Quand j'utilise le "selectOneMenu" de la maniere suivante, il se met par defaut sur la valeur "titi". Jusque là, pas de problème. Mais quand je revisite la page, lors d'un refresh par exemple, il se met sur "toto" et ignore completement le default value...
    Je viens de tester ton code, et je ne rencontre pas le problème dont tu parles. A chaque fois que je reviens sur la page contenant ce code, "titi" est bien sélectionné...

    Citation Envoyé par cymp Voir le message
    A noter que rien ne semble toucher à ce tableau écrit en dur.
    J'ai pas compris là...


    Juste pour ma curiosité, pourquoi poses-tu cette question (vu l'"inutilité" de ton code) ? Est-ce parce que tu rencontres un problème qui pourrait être lié à celui-ci, ou est-ce de la pure curiosité ?
    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
    Futur Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 7
    Points
    7
    Par défaut
    J'ai copié collé la question d'un autre forum qui n'avait pas de section JSF, désolé si je n'ai pas viré la premiere ligne j'ai oublié...

    Quand je dis que rien ne semble toucher le tableau, cela veut dire que nulle part dans mon code je fais reference a ce selectonemenu, donc qu'il est totalement indépendant.

    Et je pose cette question parce que évidemment c'est un problème auquel je suis confronté... Je cherche juste à savoir si c'est un bug connu, ou un problème connu avec une solution....

    Enfin bref c'est l'utilité de ce genre de forum non?

  4. #4
    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 : 45
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Citation Envoyé par cymp Voir le message
    Et je pose cette question parce que évidemment c'est un problème auquel je suis confronté... Je cherche juste à savoir si c'est un bug connu, ou un problème connu avec une solution....
    Je viens de m'apercevoir que ton selectOneMenu est précédé du namespace t. Autrement, je suppose qu'il s'agit du selectOneMenu de Tomahawk.
    Personnellement, j'ai testé avec celui de base (<h:selectOneMenu ...>) pour lequel ton problème n'apparait pas.
    N'utilisant pas Tomahawk, je ne pourrais donc confirmer ou infirmer la présence de ce bug...

    Citation Envoyé par cymp Voir le message
    Enfin bref c'est l'utilité de ce genre de forum non?
    Tout à fait ! Ma question n'avait que pour but de satisfaire ma curiosité, rien de plus
    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

  5. #5
    Futur Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 7
    Points
    7
    Par défaut
    je viens de tester avec un h ca me donne le meme probleme.

  6. #6
    Membre confirmé Avatar de heid
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Mai 2002
    Messages : 388
    Points : 597
    Points
    597
    Par défaut
    C'est normal qu'il ne conserve pas la valeur sélectionnée. Ta valeur est reliée à rien du tout, au rechargement de la page rien ne lui permet de savoir la nouvelle valeur à attribuer à ton élément.

    Tu dois utiliser une valeur dans un managed bean, et utiliser des actions qui ne sont pas en immédiates (sinon tu va perdre la liaison), a moins d'utiliser un t:savestate.

    Encore une fois c'est un problème de compréhension du cycle de vie d'une requête JSF.

  7. #7
    Futur Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 7
    Points
    7
    Par défaut
    je crois que c'est toi qui n'as pas compris mon problème. Je veux que monde code, lors d'une revisite de la page, repositionne le selectonemenu sur la valeur par défaut (précisé donc dans le "value="). Or, il se remet sur la première valeur du tableau.

  8. #8
    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 : 45
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Tu peux nous en dire un peu plus sur ta configuration ?
    Version de JSF ?
    Le comportement est-il le même sur IE ou sur Firefox ?
    Est-ce que ça fait la même chose si tu fais "F5" que si tu fais "Ctrl-F5" ? (dans le second cas, il recharge toute la page en faisait fi d'un éventuel cache)
    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

  9. #9
    Membre confirmé Avatar de heid
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Mai 2002
    Messages : 388
    Points : 597
    Points
    597
    Par défaut
    je pense avoir bien compri

    Mais quand je revisite la page, lors d'un refresh par exemple,
    un "refresh" n'est pas une revisite de la page cher ami ....

    essaies donc avec l'ouverture d'une nouvelle fenêtre de ton navigateur ==> ta val par défaut devrait fonctionner. Essaies ensuite en ajoutant un bouton submit qui ne fait rien. Ta valeur devrait être fausse.

  10. #10
    Futur Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par romaintaz Voir le message
    Tu peux nous en dire un peu plus sur ta configuration ?
    Version de JSF ?
    Le comportement est-il le même sur IE ou sur Firefox ?
    Est-ce que ça fait la même chose si tu fais "F5" que si tu fais "Ctrl-F5" ? (dans le second cas, il recharge toute la page en faisait fi d'un éventuel cache)
    JSF1.1

    Sur IE et firefox, j'ai le même comportement. En faisant F5 ou Ctrl F5, ma valeur par défaut se remet bien comme voulu.

    Bon je vais préciser mon histoire de refresh, désolé de ne pas avoir été très clair dessus. En fait, la page se charge sur la selection d'un element dans un tree, et est censée se remplir avec les données du bean correspondant. Ce que je ne comprends pas, c'est pourquoi ce tableau codé complétement en dur se remet sur la première valeur quand je clique sur un autre élément du tree, alors qu'il devrait se positionner sur la valeur par defaut (value=) a chaque chargement de cette page.

  11. #11
    Membre confirmé Avatar de heid
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Mai 2002
    Messages : 388
    Points : 597
    Points
    597
    Par défaut
    parceque tu fait un postback et non un premier affichage.
    essaies avec un bouton submit pour voir si ca fait pareil. si c'est le cas j'ai ta solution !
    si ca fait pas pareil vérifies que tu n'as pas de immediate = true .

  12. #12
    Futur Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 7
    Points
    7
    Par défaut
    Si je fais un submit, la valeur du selectonemenu est conservée, cad que si je laisse la valeur par défaut elle reste, et si je choisis une autre valeur elle reste aussi.

    Avec immediate = true ou false (attribut du selectonemenu), ca ne change rien le probleme est toujours la.

  13. #13
    Membre confirmé Avatar de heid
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Mai 2002
    Messages : 388
    Points : 597
    Points
    597
    Par défaut
    dernier test : essaies avec un link button en immediate = true.

  14. #14
    Futur Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 7
    Points
    7
    Par défaut
    pour le submit, j'ai rajouté ce code la:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     <input type="submit" id="submit1" value="TEST" immediate="true"/>
    (j'ai succesivement essayé true et false pour l'immediate, ce qui ne change rien)

    Quel est le code pour un link button? J'ai cherché un peu je ne vois pas ce que c'est (désolé je suis nouveau dans ce domaine)

  15. #15
    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 : 45
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Pour le submit, il s'agit d'un <h:commandButton .../> (qui crée un input), pour le link un <h:commandLink .../> (qui crée un lien).
    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

  16. #16
    Futur Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 7
    Points
    7
    Par défaut
    j'ai ajouté ceci dans mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <h:commandLink action="submit" value="TEST1" immediate="true"/>
    <h:commandLink action="submit" value="TEST2" immediate="false"/>
    <h:commandButton action="submit" value="TEST3" immediate="true"/>
    <h:commandButton action="submit" value="TEST4" immediate="false"/>
    Quand j'appuie sur chacun des boutons, la valeur sélectionnée dans le selectonemenu ne bouge pas.

  17. #17
    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 : 45
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Citation Envoyé par cymp Voir le message
    Quand j'appuie sur chacun des boutons, la valeur sélectionnée dans le selectonemenu ne bouge pas.
    La valeur ne bouge pas... C'est à dire que lors du réaffichage de la page, le combobox affiche la valeur "titi" ou bien la première valeur de la liste d'options ("toto") ?
    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

  18. #18
    Futur Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 7
    Points
    7
    Par défaut
    la valeur ne bouge pas, cela veut dire que si je laisse celle par défaut je retrouve celle par défaut, et si je selectionne un autre element de la liste c'est cet élément qui reste. En gros, ces 4 boutons n'ont aucun effet visuel.

  19. #19
    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 : 45
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Juste pour enlever un doute : le tout est bien situé dans un formulaire HTML (<h:form>) ?
    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

  20. #20
    Futur Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Points : 7
    Points
    7
    Par défaut
    si tu veux dire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
                          <h:form>
                            <h:commandLink action="submit" value="TEST1" immediate="true"/>
                            <h:commandLink action="submit" value="TEST2" immediate="false"/>
                            <h:commandButton action="submit" value="TEST3" immediate="true"/>
                            <h:commandButton action="submit" value="TEST4" immediate="false"/>
                            </h:form>
    alors oui

Discussions similaires

  1. Probleme avec SelectOneMenu avec JSF
    Par rabebIF5 dans le forum JSF
    Réponses: 1
    Dernier message: 15/05/2009, 09h01
  2. Problem avec selectonemenu
    Par midos dans le forum JSF
    Réponses: 10
    Dernier message: 20/04/2009, 11h45
  3. Réponses: 4
    Dernier message: 08/07/2008, 22h39
  4. Réponses: 4
    Dernier message: 15/01/2008, 15h41
  5. Réponses: 2
    Dernier message: 13/03/2007, 09h37

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