我对 JSF 很陌生,正在尝试以下操作
我有 ap:selectCheckboxMenu ,其中包含员工列表,其中一位将成为他们的领导者。所以我试图创建 ap:selectCheckBoxMenu 它将给我列表。选定的名称将存储在一个列表中,并且 ap: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 会更新并显示之前选择的人员列表,但是当我选择其中一个并单击按钮时,它会显示验证错误和控制台表明该值是必需的。我检查了,当我们单击按钮时,空值正在消失。
我真的不明白为什么。请帮忙
PS:我正在使用@conversationScoped