Bonjour,
le problème est dans le titre... Je n'arrive pas à utiliser un Converter pour récupérer la valeur d'un SelectOneMenu.
j'ai trouvé plein de sujets sur ce problème mais je n'arrive pas à resoudre le mien
Affichage de la liste déroulante:
Page JSF:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 public List <SelectItem> getSelectItems() { if (selectItems == null) { selectItems = new ArrayList <SelectItem> (); List<User> listUsers = getUsers(); for (User usr : listUsers) { selectItems.add(new SelectItem(usr, usr.getLogin())); } } return selectItems; }
L'attribut SelectedItem de userController est un User
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <h:selectOneMenu value="#{userController.selectedItem}" converter="userConverter"> <f:selectItem itemLabel="Choix"/> <f:selectItems value="#{userController.selectItems}"/> </h:selectOneMenu>
Donc il faut que j'utilise un converter, (je ne sais pas trop comment l'écrire).
Quand je valide: Valeur is not Valid! c'est quoi son problème???
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 public class UserConverter implements Converter { public Object getAsObject(FacesContext context, UIComponent component, String value) { return new User(); } public String getAsString(FacesContext context, UIComponent component, Object value) { return "String"; } }
Partager