Olá pessoal, boa noite.
Tenho um componente primefaces p:selectOneMenu.
Fiz uma implementação de persistencia com EntityManager no DaoGenerico da aplicação, e depois disso, o componente não funfou mais.
Já testei o método list() e está retornando os componentes perfeitamente.
Se eu trocar o p:selectonemenu por h:selectonemenu, funciona tranquilamente.
Na página está assim:
<h:selectOneMenu id="perfis" value="#{userBean.user.perfil}" converter="converterPerfil">
<f:selectItem itemLabel="Selecione" itemValue=""/>
<f:selectItems value="#{userBean.lista2}" var="e" itemValue="#{e}" itemLabel="#{e.nome}" />
</h:selectOneMenu>
No converter está assim:
[code]@FacesConverter(value = “converterPerfil”)
public class ConverterUsuarioPerfil implements Converter {
@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) {
if (value != null && !value.equals("")) {
DaoPerfilImpl dao = new DaoPerfilImpl();
return dao.getObjetoId(Integer.valueOf(value));
}
return null;
}
@Override
public String getAsString(FacesContext context, UIComponent component, Object value) {
if (value instanceof UsuarioPerfil) {
UsuarioPerfil perfil = (UsuarioPerfil) value;
return String.valueOf(perfil.getId());
}
return "";
}
}[/code]
E o value do getAsString retorna null.
O interessante, é que como eu disse, antes funcionava perfeitamente.
Alguma dica?
Ótima noite a todos.