cancel
Showing results for 
Search instead for 
Did you mean: 

Modifier la valeur d'une propriété

rguinko
Champ in-the-making
Champ in-the-making
Bonjour à tous,

J'aimerai modifier la valeur d'une proprété. Je sais comment ajouter un style (mettre en gras, en italique) au label d'une propriété mais je ne trouve pas comment modifier sa valeur. je veux modifier l'affichage de la valeur de la propriété. Je crois que je dois modifier le generator de la propriété mais je ne sais pas comment. Cette propriété est de type d:text. Devrais je toucher au TextFieldGenerator ou au LabelGenerator.

Merci d'avance pour vos réponses.
Bonne journée.
5 REPLIES 5

cleseach
Star Contributor
Star Contributor
Bonjour,

Pour pouvoir définir la façon dont une propriété doit être affichée, il faut effectivement jouer avec les "components generator".

Pour bien démarrer, je vous recommande les lectures suivantes :
Charles Le Seac'h

rguinko
Champ in-the-making
Champ in-the-making
Merci de votre réponse,
Es ce que vous auriez une idée du 'component generator' responsable de l'affichage de la valeur d'une propriété de type "d:text". Jusque là je crois qu'il s'agit de LabelGenerator mais j'en suis pas sûr. Voici comment je procède pour modifier la valeur
Dans la méthode generate

UIOutput Icomponent = (UIOutput)context.getApplication().createComponent(
               ComponentConstants.JAVAX_FACES_OUTPUT);
      Icomponent.setValue("MXYZ");
      component.getChildren().add(Icomponent);

Cette méthode ne fait pas ce que je veux. Elle ajoute la valeur XYZ au label de la propriété pourtant je voudrais modifier la valeur de la propriété?

Merci pour vos réponses.

cleseach
Star Contributor
Star Contributor
Es ce que vous auriez une idée du 'component generator' responsable de l'affichage de la valeur d'une propriété de type "d:text"
Non, mais TextFieldGenerator semble un nom approprié pour un tel composant.
LabelGenerator sert à générer… des labels Smiley Wink

Cette méthode ne fait pas ce que je veux
Quelle coquine alors !
Plus sérieusement, avec juste une fraction de code, il est difficile de savoir ce que vous avez fait, où et pourquoi.
Reprenez donc un peu la lecture du Developer Guide, notamment la partie relative au client web.

pourtant je voudrais modifier la valeur de la propriété?
Attention, la voie dans laquelle vous vous engagez va modifier l'affichage de la valeur de la propriété pour le client web (et uniquement le client web).
Est-ce bien ce que vous souhaitez ?

rguinko
Champ in-the-making
Champ in-the-making
Merci de vos réponses,
Oui c'est exactement ce que je veux (modifier juste la valeur de la propriété au niveau du client web). Je vais continuer de tenter avec TextFieldGenerator.

Merci encore.

rguinko
Champ in-the-making
Champ in-the-making
J'ai totalement oublié de poster la solution. J'ai créé mon propre génénateur (component-generator="MyGenerator") puis dans le méthode generate j'ai créé mon composant texte dans lequel j'ai placé la valeur que je souhaitais. Voici le bout de code :

UIOutput Icomponent = (UIOutput)context.getApplication().createComponent(ComponentConstants.JAVAX_FACES_OUTPUT);
Icomponent.setValue(valueToPrint);

Voilà!