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 :

Uioutput ne change pas la valeur


Sujet :

JSF Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 197
    Par défaut Uioutput ne change pas la valeur
    Salut à tous,


    J'ai un bouton qui permet de changer la valeur d'un outputText que j'ai mis un binding

    Des que je clique sur le bouton,je change la valeur du outputText en faisant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
    String nombre=((String)nombinding.getValue)+1;
    nombinding.setValue(nombre)
    lorsque j'affiche nombiending,la valeur est bonne mais aucun changement au niveau apparence

  2. #2
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Par défaut
    Bonjour,

    Donne le code Exact. parceque là déjà il y a des erreurs...
    Le code complet de l'action serai parfait

    Il faudrait le morceau de JSP avec le formulaire, le bouton et le output.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 197
    Par défaut
    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
     
    <table>
    	 <tr>
    	  <td><html:commandLink immediate="true" action="#{pkb.Clique}"><html:graphicImage value="images/inferieur.bmp"/><core:param name="symbole" value="inf"/></html:commandLink></td>
    	  <td><html:commandLink action="#{pkb.Cliquepage}"><core:param name="saut" value="nb1"/><html:outputText  value="1" binding="#{pkb.nb1}"/></html:commandLink></td>
    	  <td><html:outputText value="..." /></td>
    	  <td><html:commandLink action="#{pkb.Cliquepage}"><core:param name="saut" value="nb2"/><html:outputText value="2" binding="#{pkb.nb2}"/></html:commandLink></td>
    	  <td><html:outputText value="..." /></td>
    	  <td><html:commandLink action="#{pkb.Cliquepage}"><core:param name="saut" value="nb3"/><html:outputText value="3" binding="#{pkb.nb3}"/></html:commandLink></td>
    	  <td><html:outputText value="..." /></td>
    	  <td><html:commandLink action="#{pkb.Cliquepage}"><core:param name="saut" value="nb4"/><html:outputText value="4" binding="#{pkb.nb4}"/></html:commandLink></td>
    	  <td><html:outputText value="..." /></td>
    	  <td><html:commandLink action="#{pkb.Cliquepage}"><core:param name="saut" value="nb5"/><html:outputText value="5" binding="#{pkb.nb5}"/></html:commandLink></td>
          <td><html:commandLink immediate="true" action="#{pkb.Clique}"><html:graphicImage value="images/superieur.bmp"/><core:param name="symbole" value="sup"/></html:commandLink></td>
        </tr>
       </table>
    J'appelle ca lorsque j'appuii sur un bouton
    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
     
    	private UIOutput nb1;
    	private UIOutput nb2;
    	private UIOutput nb3;
    	private UIOutput nb4;
    	private UIOutput nb5;
     
    	public void appuie()  {
    		 FacesContext fc=FacesContext.getCurrentInstance();
    		 Pagination pagination=(Pagination)fc.getApplication().createValueBinding("#{pagination}").getValue(fc);		
    		if(pagination.getPage()>Integer.parseInt((String)nb5.getValue())){
    			 String aff=(String)nb1.getValue();
    			 String result=((Integer.parseInt(aff)*1)+1)+"";
    		   nb1.setValue(result);
    		   aff=(String)nb2.getValue();
    			 result=(Integer.parseInt(aff)+1)+"";
    		   nb2.setValue(result);
    		   aff=(String)nb3.getValue();
    			 result=(Integer.parseInt(aff)+1)+"";
    		   nb3.setValue(result);
    		   aff=(String)nb4.getValue();
    			 result=(Integer.parseInt(aff)+1)+"";
    		   nb4.setValue(result);
    		   aff=(String)nb5.getValue();
    			 result=(Integer.parseInt(aff)+1)+"";
    		   nb5.setValue(result);			
    		}

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 197
    Par défaut
    il n'y a pas moyen donc de changer la valeur d'un output en passant par un binding et faisant un nom.setvalue(...)?

  5. #5
    Membre chevronné

    Homme Profil pro
    Chomeur
    Inscrit en
    Juin 2006
    Messages
    347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Chomeur

    Informations forums :
    Inscription : Juin 2006
    Messages : 347
    Par défaut
    Salut,

    Si ça se fait très bien, mais la entre les Integer.parseInt et les cast forcés en String, je suis pas trop sur que le résultat corresponde à ce que tu cherche à en faire.
    Je ne sais pas si c'est ça qui bloque, mais il faudrai que tu ajoute des setters et getters à tout tes attributs (si ça sert pas au moins ça fera plus propre , et il me semble que JSF en a besoin pour faire les bindings)

    Bon courage,
    Tif

  6. #6
    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
    Juste comme çà, les problèmes que je note:

    • pas de getters/setters pour nb1,nb2,...
    • "public void" en lieu et place de "public String" pour la méthode d'action
    • ta méthode d'action est visiblement "appuie" mais ton formulaire utilise "Cliquepage" (note, en java, ce sont les noms de classes qui commencent par une majuscule, pas les méthodes)


    Peux-tu déjà confirmer que ton code rentre dans la méthode appuie()?


    Aussi, j'ai un peu l'impression que tu complique les choses inutilement. Y a pas besoin dans ta méthode appuie d'aller chipoter par componentBinding ton modèle de vue, alors que tu peux juste ajouter dans ton bean les valeurs sous forme de String que tu manipule, puis que tu utilise par valueBinding dans le outputText. Bref, pas besoin de mélanger le métier et la vue...

Discussions similaires

  1. Réponses: 3
    Dernier message: 19/09/2014, 10h59
  2. [html-form] mon groupe de bouton radio ne change pas de valeur !
    Par Marmotton76 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 07/10/2012, 09h30
  3. [XL-2007] Valeur de case dans une formule qui ne change pas à chaque tri.
    Par Lovecr4ft dans le forum Excel
    Réponses: 1
    Dernier message: 27/04/2011, 16h00
  4. Valeur de ComboBox qui ne change pas quand je clique
    Par pools dans le forum Windows Forms
    Réponses: 1
    Dernier message: 20/05/2009, 17h16
  5. [POO] La valeur de l'attribut ne change pas...
    Par slydemusli dans le forum Langage
    Réponses: 3
    Dernier message: 26/03/2006, 12h10

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