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 :

[RichFaces4] selectOneMenu + ajax :impossible de récupérer la valeur sélectionnée


Sujet :

JSF Java

  1. #1
    Membre averti

    Homme Profil pro
    Chargé de projets JEE
    Inscrit en
    Septembre 2002
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chargé de projets JEE
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2002
    Messages : 41
    Points : 317
    Points
    317
    Par défaut [RichFaces4] selectOneMenu + ajax :impossible de récupérer la valeur sélectionnée
    Bonjour

    J'utilise RichFaces 4.1.Final pour une interface utilisateur.

    Et, bien entendu, j'ai un problème...

    Dans ma JSF, j'ai ce bout de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <h:selectOneMenu value="#{mainController.selectedCubeUniqueName}" id="cubeSelection">
     
        <f:selectItems value="#{mainController.cubeNameList}" />
     
        <a4j:ajax event="valueChange" listener="#{mainController.cubeChanged}" render="dimensions" ajaxSingle="true" />
     
    </h:selectOneMenu>
    Dans mon bean "mainController"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    public void cubeChanged(AjaxBehaviorEvent abe)
    {
         String cubeRequested = selectedCubeUniqueName;
         System.out.println("cubeChanged cubeRequested: " + cubeRequested);
         System.out.println("cubeChanged abe: " + ((HtmlSelectOneMenu) abe.getComponent()).getSubmittedValue());
    }
    Lorsque je change une valeur du SELECT, dans la console, j'ai ces sorties:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
         cubeChanged cubeRequested:
         cubeChanged abe: null
    Ma question est simple: comment puis-je récupérer la valeur qui a été sélectionnée dans le SELECT depuis mon bean.
    Elle devrait être dans "selectedCubeUniqueName", mais il reste désespérément vide...

    Merci d'avance
    Cordialement
    Michael

  2. #2
    Futur Membre du Club
    Inscrit en
    Mars 2012
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2012
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    je sais pas quel version de JSF t'utilise, en tous cas à ma connaissance il n'y a pas de <a4j:ajax />

    dans jsf 1.2 il y avait <a4j:support />
    et jsf 2.0 a connu la naissance de <f:ajax /> pour tous les traitements ajaxés

  3. #3
    Membre averti

    Homme Profil pro
    Chargé de projets JEE
    Inscrit en
    Septembre 2002
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chargé de projets JEE
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2002
    Messages : 41
    Points : 317
    Points
    317
    Par défaut
    Bonjour,

    Merci de ta réponse, j'utilise RichFaces4 (donc JSF2), qui ajoute 2 librairies:
    "rich" (pour l'UI) et "a4j" (pour l'Ajax)

    <a4j:support /> était la balise RF3 équivalente à <a4j:ajax /> en RF4 (cette dernière étend la balise <f:ajax /> native de JSF2)

    Cordialement
    Michael

  4. #4
    Membre averti

    Homme Profil pro
    Chargé de projets JEE
    Inscrit en
    Septembre 2002
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chargé de projets JEE
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2002
    Messages : 41
    Points : 317
    Points
    317
    Par défaut
    Eh bien, çà fonctionne à présent, en modifiant deux/trois ptits trucs.

    Voici la solution pour ceux qui cherchent

    JSF:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <h:form id="cubeChoice">
    	<h:selectOneMenu value="#{mainController.selectedCubeUniqueName}" id="cubeSelection">
    		<f:selectItems value="#{mainController.cubeNameList}"/>
    		<a4j:ajax event="change" listener="#{mainController.cubeChanged}" ajaxSingle="true" execute="@this" render="dimensions" />
    	</h:selectOneMenu>
    	<rich:message for="cubeSelection" />
    </h:form>
    La valeur sera bien transférée dans selectedCubeUniqueName du bean et récupérable par la méthode appelée (cubeChanged)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ...
    public void cubeChanged(AjaxBehaviorEvent abe)
    {
      // this.selectedCubeUniqueName 
    }

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

Discussions similaires

  1. Réponses: 23
    Dernier message: 05/05/2010, 16h59
  2. Réponses: 3
    Dernier message: 25/08/2008, 09h48
  3. Réponses: 11
    Dernier message: 21/08/2007, 09h57
  4. [AJAX] Impossible de récupérer les valeurs en Post
    Par Tommyl dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/06/2007, 20h30
  5. [PEAR][HTML_QuickForm] Impossible de récupérer les valeurs du formulaire
    Par Mainman dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 29/05/2007, 12h15

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