tu devrais écrire un convertisseur qui transforme ton objet "modules" en String et vice versa mais bon voici le code d'un convertisseur generic
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 28 29 30 31 32 33 34 35
| import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.ConverterException;
/**
*
* @author fabrice
*/
@ManagedBean(name="genericConverter")
@ViewScoped
//@FacesConverter(value="genericConverter")
public class GenericSecuredConverter implements Converter, Serializable {
private Map <UUID, Object> temporaryStore = new HashMap <UUID, Object> ();
@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) throws ConverterException {
return temporaryStore.get(UUID.fromString(value));
}
@Override
public String getAsString(FacesContext context, UIComponent component, Object value) throws ConverterException {
UUID id = UUID.randomUUID();
temporaryStore.put(id, value);
return id.toString();
}
} |
Et tu peux l'utiliser comme ceci:
<p:selectManyMenu id="scroll" converter="#{genericConverter}">
Mais je te conseillerais d'aller lire le cycle de vie de JSF.Tu comprendras mieux pourquoi ton erreur survient
Partager