Requesting help in converting to JSF selectOneMenu

0

Look at the picture;

Clickingsavegeneratesthiserrormessageonscreen,whichindicatesthatanullconvertercouldnotbeused,sayingthatthereisnonullconversionforthecheckboxshowninthefigure,sincetheconvertwouldconvertthelisttoacity-typeobject,butthereisaclassthatconvertsthislist,andeventhatsameclassisbeingusedinanothermanagerBeanandisworkingfine,justnotworkingonthisform,seebelow;

packagebr.com.terezinha.adm.converter;importjavax.faces.component.UIComponent;importjavax.faces.context.FacesContext;importjavax.faces.convert.Converter;importjavax.faces.convert.FacesConverter;importbr.com.terezinha.adm.model.Cidade;importbr.com.terezinha.adm.repository.Cidades;importbr.com.terezinha.adm.util.cdi.CDIServiceLocator;@FacesConverter(value="estadoConverter", forClass = Cidade.class)
public class CidadeConverter implements Converter {

    private Cidades cidades;

    public CidadeConverter() {
        cidades = CDIServiceLocator.getBean(Cidades.class);
    }

    @Override
    public Object getAsObject(FacesContext context, UIComponent component, String value) {
        Cidade retorno = null;
        if (value != null) {
            Long id = new Long(value);
            retorno = cidades.porId(id);
        }

        return retorno;
    }

    @Override
    public String getAsString(FacesContext context, UIComponent component, Object value) {
        if (value != null) {
            Cidade cidade = (Cidade) value;
            return cidade.getCidadeId() == null ? null : cidade.getCidadeId().toString();


//          if (cidade.getCidadeId() != null) {
//              return cidade.getCidadeId().toString();
//          } else if (cidade.getCidadePai() != null) {
//                  return cidade.getCidadePai().toString();
//          }
//          else if(cidade.getSubCidades() !=null){
//              return cidade.getSubCidades().toString();
//          }
//          else{
//              return null;
//          }

        }

        return "";
    }

}

I can not understand why this is happening, I've made several attempts to fix it as you can see.

I've tried it this way;

<p:selectOneMenu id="cidades" value="#{cadastroLocalidadeBean.cidadePai}" converter="estadoConverter"  >
    <f:selectItem itemLabel="Selecione a Bairro" />
    <f:selectItems value="#{cadastroLocalidadeBean.subcidades}"
        var="subcidade" itemValue="#{subcidade}"
        itemLabel="#{subcidade.descCidade}" />
</p:selectOneMenu>

And no results.

Would anyone have a suggestion?

Here's my project on GitHub;

link

    
asked by anonymous 30.09.2015 / 19:40

0 answers