JSF . SelectOneMenu и SelectItems

Я пытаюсь разрешить пользователь выбирает элемент коллекции из раскрывающегося списка в JSF. Вот код, который я использую:

<f:view>
 <h:form id="insert">
    <h:selectOneMenu value="#{MyBean.user}">
        <f:selectItems value="#{MyBean.userList}" var="currentUser" itemValue="#{currentUser.username}" itemLabel="#{currentUser.username}"/>
     </h:selectOneMenu>
     <h:commandButton value="Insert" action="#{AuctionBean.insertItem}"/><br>
 </h:form>
</f:view>

И это код MyBean:

@ManagedBean
public class MyBean{
    private String user;
    private Collection<User> userList;

    @PostConstruct
    public void init() {
                this.userList = UserRepository.getInstance().findAllUsers();
    }
    ...
    public String insertItem() {
         System.out.println("The selected user is " + this.user);
         ...
         return ("successfulInsertion");
    }
...
}

И, если нужно, мой геттер и сеттер для пользователя:

public String getUser() {
        return this.user;
    }

    public void setUser(String user) {
        this.user = user;
    }

Моя проблема в том, что когда он печатает «Выбранный пользователь», там не написано user.toString(), но userList.toString()! Это похоже на то, что selectOneMenu неправильно настроен, но я много искал об этом. Кто-нибудь может помочь? Спасибо, АН

5
задан andreaxi 10 June 2012 в 13:32
поделиться