Фильтр Primefaces selectOneMenu не работает

Я пытаюсь заставить работать selectOneMenu. Мне удалось показать выбор с фильтром ввода, но каждый раз, когда я пытаюсь что-то там написать, все просто исчезает.

Вот код из представления:

<p:selectOneMenu style="width:160px" label="Supervisor" filter="true" filterMatchMode="startsWith" converter="userConverter">
    <f:selectItem itemLabel="Choose..." itemValue="" />
    <f:selectItems value="#{userBean.supervisors}" var="user" itemLabel="#{user.surname} #{user.name}" itemValue="#{user}"/>
</p:selectOneMenu>

Значения, передаваемые userBean.supervisors, предоставляются:

public List<User> getSupervisors() {
    if (supervisors == null) {
        supervisors = userDao.getUsersByRole(Enums.Roles.SUPERVISOR.getValue());
    }
    return supervisors;
}

А конвертер простой:

@FacesConverter(forClass = User.class, value="userConverter")
public class UserConverter implements Converter {

@Override
public String getAsString(FacesContext context, UIComponent component, Object value) {
    if(value == "") return null;
    // Convert ProjectDetail to its unique String representation.
    User user = (User) value;
    String idAsString = String.valueOf(user.getUserId());
    return idAsString;
}

@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) {
    // Convert unique String representation of ProjectDetail back to ProjectDetail object.
    Long id = Long.valueOf(value);
    UserDAO userDao = new UserDAO();
    User user = userDao.getUser(id);
    return user;
}
}

Что интересно, если я изменю фильтрацию p:selectOneMenu на p:selectCheckboxMenu и все будет хорошо работать.


person J33nn    schedule 27.01.2013    source источник


Ответы (1)


Проверяет с помощью этого css, чтобы показать результаты:

.ui-selectonemenu-items-wrapper{
    height: auto !important;
}
person goncami    schedule 01.07.2014