自动完成没有设置对象primefaces

时间:2015-08-26 10:25:54

标签: jsf primefaces

我有这个自动完成功能非常好,除非它没有在支持bean中设置value参数

value="#{marketLoader.invSelectedItem}"

但它只会显示搜索中的正确项目。但是单击项目不会设置对象(不是字符串)。在支持bean中。在这种情况下,marketLoader.completeItemtext将返回List。是否有理由不调用setInvSelectedItem()方法?我需要一个转换器吗?

<p:autoComplete id="drop" dropdown="true" value="#{marketLoader.invSelectedItem}" 
        completeMethod="#{marketLoader.completeItemtext}" 
        var="item" itemLabel="#{item.typeName}"/>

完整的方法

private invTypes invSelectedItem;
public List<invTypes> completeItemtext(String query) {
        if (query.length() < 3) {
            return null;
        }
        List<invTypes> tmpList = listDBItem.stream().filter(p -> p.getTypeName().contains(query))
                .collect(Collectors.toList()); 

        return tmpList;
    }

1 个答案:

答案 0 :(得分:0)

您缺少转换器以正确设置所选值。请参阅this