如何在jsf中实现foreach?
如何使用当前的ofer和h:selectManyCheckBox中的选定项创建ofer\u has\u location对象从location和ofer连接对象如何在jsf中实现foreach?,jsf,jsf-2,Jsf,Jsf 2,如何使用当前的ofer和h:selectManyCheckBox中的选定项创建ofer\u has\u location对象从location和ofer连接对象 <h:selectOneMenu id="companyidCompany" value="#{oferController.selected.companyidCompany}" title="#{bundle.CreateOferTitle_companyidCompany}" required="
<h:selectOneMenu id="companyidCompany"
value="#{oferController.selected.companyidCompany}"
title="#{bundle.CreateOferTitle_companyidCompany}"
required="true"
requiredMessage="#{bundle.CreateOferRequiredMessage_companyidCompany}">
<f:ajax event="valueChange" execute="companyidCompany"
render="locationCollection" />
<f:selectItems value="#{companyController.itemsAvailableSelectOne}"/>
</h:selectOneMenu>
<h:outputLabel value="#{bundle.CreateOferLabel_locationCollection}"
for="locationCollection" />
<h:selectManyListbox id="locationCollection" value="locations"
title="#{bundle.CreateOferTitle_locationCollection}">
<c:forEach items="locations">
<f:selectItems var="locations"
value="#{oferController.selected.companyidCompany.locationCollection}" />
</c:forEach>
</h:selectManyListbox>
为了实现“连接元素”功能,您需要做什么: 有两个元素,在您的情况下,第二个元素将取决于第一个元素的选定选项。第二个元素必须有一个id才能在以后重新提交。 由您选择的两个JSF标记呈现的每个HTML select元素都将有一组选项,这些选项不应该通过迭代元素创建,比如,实际上这是可能的,而是通过/tags来创建的。因此,请删除注释中的迭代标记。 当组件中的值不是作为普通字符串或原语包装器整数等绑定,而是作为模型对象YourClass对象等绑定时,您需要告诉JSF两件事:它如何从类中打印选项的值,以及它如何从作为字符串的请求参数重构对象。为此,您需要实现,也就是说,解释JSF如何进行上述转换。使用和作为参考点。请注意的适当语法。 由这两个组件绑定的模型值也需要表示您的类,其方式与所选项的值相同。因为它是value={};因为它是value={},分别使用您的类selectOneMenuValue和List selectManyListboxValues或您的类[]selectManyListboxValues bean属性。 第二次选择的填充将通过标签处理。由于内容需要“动态”计算,因此正确的位置是在其listener属性中,即,要使列表内容具有SecondListBox=createListboxValuesYourClass oneMenuSelectedOption。如果希望重新渲染第二个元素,请在的“渲染”属性中指定其客户端id。实例 例如,如果要绑定到String/String[]值,则不需要转换器部件
试着一步一步地检查,找出错误并改正。没有理由使用。只要去掉它,提供转换器,在listbox中使用正确的值绑定,并在AJAX侦听器方法中准备必要的数据,就可以了。@skuntsel,您需要打破所有这些down@kolossus然后我将离开OP,而不考虑他的个人经历,这可能会对他编写真实世界应用程序的能力产生负面影响:当然,我会给你一些指导,给你!看一看!我还不能让它工作,我的自定义转换器getAsObject方法中的值正在返回,我不知道它为什么工作!!!!!!非常感谢你!!!jpa用手轻轻地摆弄了一下会合桌,它就像一个魔咒!!!!非常感谢你!!!!