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 :

Composants en relation


Sujet :

JSF Java

  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Mai 2011
    Messages : 790
    Par défaut Composants en relation
    Bonsoir,

    j'ai deux button
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <h:commandButton value="Ok" id="button1"/>
    <h:commandButton value="valider" id="button2" action="bean.methode2"/>
    je veux dans la méthode "methode 2 " vérifier si j'ai cliqué sur le button Ok ou non,si j'ai cliqué je fais un traitement.
    Est-ce-que vous avez une idée s'il vous plait?
    Merci

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    tu risque pas d'avoir cliqué sur ok, puisque ce bouton n'est pas relié à l'action. Du coup la question "ai-je cliqué sur ok" dans methode2 a toujours comme réponse "non"

    En JSF on ne se pose pas la question de savoir sur quel bouton l'utilisateur a appuyé, c'est de la responsabilité du gars qui développe l'interface, pas de celui qui développe les beans. Aujourd'hui c'est un bouton, demain ce sera peut-être une requête ajax, t'as pas envie de modifier ton code à chaque fois.

    Si t'as besoin d'une action valider et d'une action ok, tu fais deux méthodes séparées dans ton bean, tout simplement.

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Mai 2011
    Messages : 790
    Par défaut
    Bonjour,

    Au fait t'as raison mais imaginons si les deux button ont deux action méthode 1 et méthode 2 et une variable x par exemple qui prend la valeur 0 au début.

    je veux dans la méthode deux changer la valeur de la variable x vers 1 lorsque la méthode 1 est satisfaite.C'est pas possible?
    Merci

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    ben dans la méthode 1 tu change la variable x, c'est pas bien compliqué ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    private int x = 0;
    public String methode1(){
      x = 1;
    }
     
    public String methode2(){
       if (x==1)
          return "SUCCESS";
       else
          return "ERROR";
    }

  5. #5
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Mai 2011
    Messages : 790
    Par défaut
    au fait j'utilise les chaines de caractères mais ça ne marche pas avec les equals.

    voilà je dispose le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    private String styleParagraphe="B";
    méthode 1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public String methode1(){
     
    		styleParagraphe="B";
    		WordprocessingMLPackage wordMLPackage;
    		try {
    			wordMLPackage = WordprocessingMLPackage.load(new java.io.File(
    					System.getProperty("user.dir") + "/prestations d'assistance des parafeux.docx"));
    			Map<DataFieldName, String> map = new HashMap<DataFieldName, String>();
    			map.put(new DataFieldName("X"),styleParagraphe);....
    méthode 2
    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
     
    	public String méthode2(){
     
    WordprocessingMLPackage wordMLPackage;
    		try {
    			wordMLPackage = WordprocessingMLPackage.load(new java.io.File(
    					System.getProperty("user.dir") + "/Prestations d'assistance des serveurs.docx"));
    			Map<DataFieldName, String> map = new HashMap<DataFieldName, String>();
    			if (styleParagraphe.equals("B")){
    				styleParagraphe="C";
    				map.put(new DataFieldName("X"),styleParagraphe);
    			}else{
    					map.put(new DataFieldName("X"),styleParagraphe);
     
    				}....
    dans ma page j'ai une action qui appelle la premiére page et une autre action qui appel la 2eme page

    Lorsque je génére les deux action j'aurai la lettre C, et lorsque je génére seulement la 2eme action il me donne C aussi alors normalement ça doit etre B

  6. #6
    Membre très actif Avatar de bruneltouopi
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    308
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 308
    Par défaut
    lorsque tu cliques certainement sur le bouton 2 la variable styleParagraphe ne conserve pas la même valeur ou est reinitialisée.

    Essayes de débugger voir ce que contient cette variable lorsque que cela est dans la méthode2.
    Aussi n'oublies pas de montrer ton scoped car si cela est en RequestScoped je doute que cela puisse fonctionner.

    Moi j'aurai utiliser f:param dans le bouton 1 pour initialiser la variable styleParagraphe

  7. #7
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Mai 2011
    Messages : 790
    Par défaut
    Mon scoped est de type session, au fait ça marche maintenant merci

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/08/2010, 20h01
  2. [JPA]Relation avec @JoinColumn pour une cle compose
    Par seddik_saber dans le forum JPA
    Réponses: 1
    Dernier message: 27/02/2008, 09h13
  3. [Design/ID] Relation de dépendance entre composants
    Par ze_corsaire dans le forum UML
    Réponses: 12
    Dernier message: 17/01/2008, 21h42
  4. Réponses: 2
    Dernier message: 03/04/2007, 09h28
  5. Relation entre composant et variables
    Par argon dans le forum AWT/Swing
    Réponses: 20
    Dernier message: 28/05/2006, 18h39

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