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
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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.
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 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
Partager