bonjour à tous,
J'ai un ptit problème un peu énervant. Je n'ai pas trouvé de problème similaire, et la "componentSuite" de IceFaces ne m'a pas éclairé non plus :cry:
J'ai une IHM d'identification avec une boîte de choix avec des utilisateurs, une zone de saisie pour le mot de passe. Et une case à cocher pour indiquer si on veut rentrer dans une IHM d'administration ou pas.
côté SessionBean, j'ai un :
avec getters et setters public dans l'interface et la classe.Code:
1
2
3
4
5
6
7 @Stateful @Name("userManager") public class UtilisateurManagerBean implements UtilisateurManager{ private Utilisateur user; private List<Utilisateur> listUsers; private boolean demarrerEnModeAdmin;
La liste des utilisateurs est bien initialisée, et la boîte de choix est bien remplie.
Mais la case à cocher semble sans effet.
J'ai essayé plusieurs choses :
... en espérant que demarrerEnModeAdmin varie automatiquement avec les changements de valeur de la case à cocher. Mais non :cry:Code:
1
2
3
4
5
6
7
8 <ice:panelGroup rendered="#{userManager.voirDemarrerEnModeAdmin}"> <ice:outputText>Demarrer en mode admin </ice:outputText> <ice:selectBooleanCheckbox id="dema" value="#{userManager.demarrerEnModeAdmin}"/> </ice:panelGroup>
J'ai essayé en rajoutant
mais pas mieux. Même moins bien car la page est reconstruite, et quand je coche la case à cocher, le mot de passe saisi est effacé.Code:
1
2 partialsubmit="true" immediate="true"
alors, j'ai essayé que le changement de valeur de la case à cocher appelle une méthode du sessionBean
côté java :Code:
1
2
3
4
5
6
7
8
9 <ice:panelGroup rendered="#{userManager.voirDemarrerEnModeAdmin}"> <ice:outputText>Demarrer en mode admin </ice:outputText> <ice:selectBooleanCheckbox id="dema" valueChangeListener="#{userManager.changeMode}" value="#{userManager.demarrerEnModeAdmin}"/> </ice:panelGroup>
Et malgré ce code, je n'ai pas du tout de trace sur la console serveur. :marteau:Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 public void changeMode(ValueChangeEvent event){ String strmode = (String) event.getNewValue() ; System.out.println("DEBUT : changeMode"); System.out.println("changeMode : " + strmode); demarrerEnModeAdmin = !demarrerEnModeAdmin; if(demarrerEnModeAdmin){ System.out.println("demarrerEnModeAdmin = true"); } else{ System.out.println("demarrerEnModeAdmin = false"); } System.out.println("FIN : changeMode"); }
Une bonne âme saurait-elle m'éclairer ?
merci d'avance