p:selectOneMenu отправляет нулевое значение контроллеру

Я новичок в JSF и пытался сделать следующее

У меня есть p:selectCheckboxMenu, в котором есть список сотрудников, и один из них станет их лидером. Итак, я пытался создать p: selectCheckBoxMenu, который даст мне список. Выбранные имена будут сохранены в списке, и p:selectOneMenu будет обновлен, в котором снова будут представлены эти выбранные имена, и одно из них будет выбрано (из p:selectOneMenu). По сути, из p: selectcheckbox мы можем выбрать много имен. и p:selectonemenu мы выберем один из выбранных.

Мой код:

<p:outputLabel for="teamMemb" value="Select Team Members"></p:outputLabel>
<p:selectCheckboxMenu id="teamMemb" value="#{teamMaintainanceController.teamMemb}">
    <p:ajax update="teamLeader"></p:ajax>
    <f:selectItems value="#{employeeMaintainanceController.possibleManagerList}"></f:selectItems>
</p:selectCheckboxMenu>

<p:outputLabel for="teamLeader" value="Select Team Leader"></p:outputLabel>
<p:selectOneMenu id="teamLeader" value="#{teamMaintainanceController.teamLeader}">
    <f:selectItem itemLabel="Select One" itemValue="" />
    <f:selectItems itemLabel="#{teamMaintainanceController.teamMemb}" itemValue="#{teamMaintainanceController.teamMemb}" value="#{teamMaintainanceController.teamMemb}"/>
</p:selectOneMenu>

<p:commandButton id="applyBtn" value="Add" ajax="false" actionListener="#{teamMaintainanceController.addTeam}"/>

Все заключено в форму. Теперь проблема в том, что когда я выбираю значения из p: selectCheckboxMenu, p: selectOneMenu обновляется и показывает список людей, которые были выбраны ранее, но когда я выбираю одного из них и нажимаю кнопку, он показывает ошибку проверки и консоль показывает, что значение требуется. Я проверил, и нулевое значение устанавливается, когда мы нажимаем кнопку.

Я действительно не понимаю, почему. Пожалуйста помоги

P.S. Я использую @conversationScoped


person Ayush choubey    schedule 16.03.2015    source источник
comment
Вы должны проверить использование vor selectItems. stackoverflow.com/questions/2434902 /   -  person sgpalit    schedule 16.03.2015
comment
Где вы научились использовать itemLabel и itemValue таким образом?   -  person BalusC    schedule 16.03.2015
comment
Ну, я пробовал много вещей. Как правило, я использую ItemLabel для имен и itemValue для идентификаторов. В этом случае я был разочарован и пробовал случайные вещи, прежде чем публиковать здесь. В моей предыдущей попытке я использовал только значения, но это не сработало. Итак, я попробовал с метками. Я чувствую, что это неправильно.   -  person Ayush choubey    schedule 16.03.2015
comment
Это вводит красную сельдь в вопрос. В любом случае, какую именно ошибку проверки вы получили? Сообщения об ошибках обычно доступны для поиска. Это ошибка проверки: значение недействительно?   -  person BalusC    schedule 16.03.2015
comment
Да, это точная ошибка. Я перешел по ссылке и прочитал о решениях. но не мог этого понять. Я не использую какой-либо конвертер, так что это исключает его. У меня сейчас есть тема для разговора. Теперь для этого также выполните бизнес-логику в PostConstruct bean-компонента вместо геттера. Как я могу это сделать. Я имею в виду teamMaintainanceController.teamMemb, который представляет собой список, в котором будут храниться все проверенные значения (с использованием сеттеров), а затем обновлять selectonemenu. Как я буду хранить этот список teamMemb в @postconstruct   -  person Ayush choubey    schedule 17.03.2015
comment
@BalusC: мне очень нужна твоя помощь. Элементы selectOneMenu подготавливаются элементами, отмеченными в selectCheckboxMenu. Я действительно понятия не имею. Не могли бы вы помочь? :)   -  person Ayush choubey    schedule 17.03.2015