如何将 selectOneMenu 与 selectItems 中的对象一起使用

how to use selectOneMenu with object in selectItems

我不明白如何使用 f:selectitems 中对象的 ArrayList。 我使用复合组件,但下面的代码不起作用:

<h:selectOneMenu id="kladrRegion-dctKladrRegion" 
                                     tabindex="100"
                                     value="#{cc.attrs.kladrRegion}"
                                     styleClass="comboBox ui-corner-all   inputText ui-inputfield kladrSearchFormInput kladrSearchFormSelectWidth selectHight"  
                                     style="font-size: 13px; width: 300px;"
                                     binding="#{cc.attrs.cbKladrRegion}" >
                        <f:selectItems value="#{cc.attrs.kladrRegions}" var="region" 
                                       itemLabel="#{region.value}" itemValue="#{region.id}" />                                
                        <f:ajax  
                            listener="#{cc.attrs.kladrRegionChange}" />
                    </h:selectOneMenu>

此代码不起作用,因为属性 var 在添加第二个复合组件后收到新值。前面的复合组件selectOneMenu不会显示。 这种情况下如何制作下拉列表?

我找到了问题的解决方案。按照这个 post: JSF 2 composites and binding for validation

SelectOneMenu 需要具有具有唯一值的 "binding" 属性。