从服务器端创建SelectOneMenu UIComponent

时间:2014-09-04 10:55:59

标签: jsf-2 primefaces

我创建了一个SelectOneMenu uicomponent

SelectOneMenu value = new SelectOneMenu();

我想在SelectOneMenu中插入一些selectItems。 我试过这个

String[] options = question.getOptions().split(",");
for(String option : options){
    SelectItem selectItem = new SelectItem();
    selectItem.setLabel(option);
    selectItem.setValue(option);
    value.getChildren().add(selectItem);
}

但是当我添加selectItem时,我得到的错误是add(uicomponent)不适用于参数SelectItem。怎么做,有什么建议吗?

1 个答案:

答案 0 :(得分:4)

因为javax.faces.model.SelectItem不是UIComponent而失败了。你应该拥有的是UISelectItem。所以你的代码看起来应该更像

    String[] options = question.getOptions().split(",");
for(String option : options){
    UISelectItem = new UISelectItem();
    selectItem.setItemLabel(option);
    selectItem.setItemValue(option);
    value.getChildren().add(selectItem);
}