我在创建rich:combobox时遇到了问题 我做了如下
<rich:comboBox selectFirstOnUpdate="false" defaultLabel="Enter some value">
<f:selectItems value="#{userregister.selectItems}" />
</rich:comboBox>
在支持bean中我创建了selectItems,如下所示
List<UISelectItem> selectItems;
UISelectItem uisi = new UISelectItem();
uisi.setItemLabel("label");
uisi.setValue("value");
selectItems.add(uisi);
但是我得到异常javax.servlet.ServletException: Value of tag <selectItems> attribute is incorrect.
哪种方法可以创建具有动态值的组合框呢?
答案 0 :(得分:5)
它不起作用的原因是你没有在你的选择项目上设置itemValue。但是我从未使用过UISelectItem,而是像这样使用SelectItem:
List<SelectItem> selectItems = new ArrayList();
selectItems.add(new SelectItem('value',
'label'));
与说法相同:
List<SelectItem> selectItems = new ArrayList();
SelectItem item = new SelectItem();
item.setItemLabel("label");
item.setItemValue("value");
selectItem的值被定义为itemValue而不是btw,因此通过更正您的代码可能无需进行任何修改即可。您使用UISelectItem的原因是什么,而不仅仅是SelectItem btw?