Как сделать javax.faces.model.SelectItem выбранным - PullRequest
6 голосов
/ 06 марта 2009

Я создаю список javax.faces.model.SelectItem (в бине) для использования с h:selectManyCheckbox, но не могу понять, как сделать выбранным SelectItem.

Как это сделать? Это должно быть возможно, верно? ...

    public List<SelectItem> getPlayerList(String teamName) {
    List<SelectItem> list = new ArrayList<SelectItem>();

    TeamPage team = (TeamPage) pm.findByName(teamName);

    List<PlayerPage> players = pm.findAllPlayerPages();

    for (PlayerPage player : players) {
        boolean isMember = false;
        if (team.getPlayerPages().contains(player)) {
            isMember = true;
        }
        SelectItem item;
        if (isMember) {
            // TODO: Make SelectItem selected???
            item = null;
        } else {
            item = new SelectItem(player.getId(), createListItemLabel(player), "", false, false);
        }
        list.add(item);         
    }
    return list;
}

1 Ответ

9 голосов
/ 06 марта 2009

Предположим, у нас есть этот код JSF:

<h:selectManyCheckbox value="#{bean.selectedValues}">
    <f:selectItems value="#{bean.playerList}"/>
</h:selectManyCheckbox>

, тогда выбранные значения (т.е. отмеченные флажки) сохраняются в свойстве bean.selectedValues ​​.

Таким образом, в вашем Java-коде вы должны обработать selectValues, указав правильный идентификатор в свойстве selectedValues ​​.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...