使用omniFaces.ListConverter和ajax的PrimeFaces自动完成在backBean中返回null

时间:2014-09-12 23:37:18

标签: ajax primefaces autocomplete

我尝试使用自动填充标记来执行国家/州/城市加载程序,但这不起作用。我已经完成了SelectOneMenu标记并且它可以正常工作,但现在我尝试使用autoComplete来实现它,我无法使其正常工作,因为ajax标记中的方法返回空

这是我的XHTML

<p:outputLabel value="Region"/>
<p:autoComplete value="#{beanPersona.region}"   completeMethod="#{beanPersona.listarRegion}"
                var="region" itemLabel="#{region.nombre}" itemValue="#{region}"
                forceSelection="true" autocomplete="true" dropdown="true" >
    <o:converter converterId="omnifaces.ListConverter" list="#{beanPersona.listRegion}"/>
    <p:ajax event="itemSelect" listener="#{beanPersona.onRegionChange}" process="@form"/>
</p:autoComplete>

这是我的Bean(Scoope是ViewScope,而且其他工作正常)

public void onRegionChange(SelectEvent e) {
    System.out.println(e.getObject());
    this.region = (Region) e.getObject();
}

public List<Region> listarRegion(String filtro) {
    List<Region> listaCompleta = (List<Region>) (List<?>) new Dml().list(new Region());
    List<Region> lista = new ArrayList();
    if(filtro.length() > 0)
        for (Region objeto : listaCompleta) {
            if(objeto.getNombre().toLowerCase().contains(filtro.toLowerCase()))
                lista.add(objeto);
        }
    else
        lista = listaCompleta;
    return lista;
}

如果你能帮助我,我会很感激

0 个答案:

没有答案