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 :

InputText retourne toujours zéro


Sujet :

JSF Java

  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2009
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 74
    Par défaut InputText retourne toujours zéro
    Voici ma page CompteBancaireOperationDetails.xhtml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <p:inputText id="ajouter" value="#{beanGestionDeComptes.transactionCompte.valeurTransaction}" title="ajouter"/>
                <p:commandButton value="Ajouter" actionListener="#{beanGestionDeComptes.ajouterSold()}" action="CompteBancaireOperationDetails?faces-redirect=true" />
    mon managed bean BeanGestionDeComptes.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    TransactionCompte transactionCompte = new TransactionCompte();
     
    public TransactionCompte getTransactionCompte() {
            return transactionCompte;
        }
     
        public void ajouterSold()
        {
            compteBancaire.ajouterArgent(transactionCompte.getValeurTransaction());
            compteBancaire = gestionnaireDeCompteBancaire.update(compteBancaire);
        }
    et mon bean TransactionCompte.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public class TransactionCompte {
     
        int valeurTransaction;  //+getter and setter
    }
    quand j'entre une valeur dans le champ de texte puis je clique sur le lien, transactionCompte.getValeurTransaction() reste toujours à zéro

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 162
    Par défaut
    Bonjour ihebiheb,

    Cela vient peut être du fait que ton champ valeurTransaction est un "int" et que les champs inputText se lient avec des valeurs de type String.

    Si tu es sûr de vouloir un entier en reception, tu peux utiliser le composant <p:spinner /> de Primefaces.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    actionListener="#{beanGestionDeComptes.ajouterSold()}"
    De plus les parenthèses ne sont pas requises pour les appels de méthodes coté Client. Il me semblait que cette erreur de synthaxe soulevait une erreur de compilation, mais apparement non

  3. #3
    Membre confirmé
    Inscrit en
    Juillet 2009
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 74
    Par défaut
    J'ai essayé avec String, et avec Spinner mais rien :'(

  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 : 47
    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,

    Citation Envoyé par ihebiheb Voir le message
    Voici ma page CompteBancaireOperationDetails.xhtml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <p:inputText id="ajouter" value="#{beanGestionDeComptes.transactionCompte.valeurTransaction}" title="ajouter"/>
                <p:commandButton value="Ajouter" actionListener="#{beanGestionDeComptes.ajouterSold()}" action="CompteBancaireOperationDetails?faces-redirect=true" />
    mon managed bean BeanGestionDeComptes.java
    Ton problème provient sans doute du fait que tu définis un actionListener et un action pour ton bouton. Je te conseille d'appeller ta méthode ajouterSold dans l'action (plutôt que l'actionListener), et que cette méthode retourne la clé de navigation (navigation rules) correspond à ta redirection.


    Citation Envoyé par N4rc0 Voir le message
    Cela vient peut être du fait que ton champ valeurTransaction est un "int" et que les champs inputText se lient avec des valeurs de type String.
    Non, il est tout à fait possible d'utiliser un int, et dans ce cas, vu qu'il s'agit d'un nombre, autant utiliser un int (voire un Integer, mais bon).
    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
    Mars 2012
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2012
    Messages : 5
    Par défaut
    je dirai que actionListener attend un événement en paramettre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public void ajouterSold(ActionEvent e)
    {
     // To Do
    }

  6. #6
    Membre confirmé
    Inscrit en
    Juillet 2009
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 74
    Par défaut
    ça ne marche pas non plus.

  7. #7
    Membre confirmé
    Inscrit en
    Juillet 2009
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 74
    Par défaut
    Bon j'ai résolu le problème mais je ne comprend toujours pas pourquoi ca n'a pas marché auparavant

    J'ai enlevé mon bean TransactionCompte

    J'ai mis l'attribut valeurTransaction dans BeanGestionDeComptes.java

    du coup ma méthode ajouterSold devient

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public void ajouterSold()
        {
            compteBancaire.ajouterArgent(transactionCompte.getValeurTransaction());
            compteBancaire = gestionnaireDeCompteBancaire.update(compteBancaire);
        }

  8. #8
    Membre Expert
    Avatar de fxrobin
    Homme Profil pro
    Architecte SI, Java Fan, API Manager
    Inscrit en
    Novembre 2007
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte SI, Java Fan, API Manager
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2007
    Messages : 875
    Par défaut
    Salut,

    ton "BeanGestionDeComptes" avait quel scope ?
    S'il était pas déclaré en "request" ton bean "TransactionCompte" était ré-instancié (et donc vidé).

  9. #9
    Membre confirmé
    Inscrit en
    Juillet 2009
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 74
    Par défaut
    mon bean est sessionScoped

Discussions similaires

  1. no finalement getWidth renvoie toujours zéro. HELP !
    Par Virgile le chat dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 23/06/2007, 01h58
  2. API GetBitmapDimensionEx retourne des zéros
    Par zazaraignée dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 02/05/2007, 14h15
  3. fonction retournant toujours 0.000 ?
    Par _SamSoft_ dans le forum C
    Réponses: 49
    Dernier message: 22/02/2007, 20h52
  4. [sockets] gethostbyname retourne toujours la même chose
    Par Strab dans le forum Développement
    Réponses: 3
    Dernier message: 15/09/2006, 10h24
  5. Réponses: 2
    Dernier message: 30/03/2006, 16h18

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