我正在尝试通过programmcode创建一个HtmlSelectOneMenu。这不是问题。我意识到这样:
final UISelectItem select = (UISelectItem) app.createComponent(UISelectItem.COMPONENT_TYPE);
//Items für DropDownMenü erstellen
List<SelectItem> items = new ArrayList<SelectItem>();
for (int k = 0; k < Gender2.values().length; k++){
items.add(new SelectItem(Gender2.values()[k]));
}
//Items dem DropDown Menü zuordnen
UISelectItems selectItems = new UISelectItems();
selectItems.setValue(items);
selectOneRadio = (HtmlSelectOneMenu) app.createComponent(HtmlSelectOneMenu.COMPONENT_TYPE);
selectOneRadio.getChildren().add(selectItems);
testgrid.getChildren().add(selectOneRadio);
当我再次调用此方法时,会出现以下错误: 例外报告
消息
description服务器遇到内部错误(),导致无法完成此请求。
例外 javax.servlet.ServletException:已找到Komponenten-ID j_idt3:j_id5
我是否可以针对此错误进行操作?
答案 0 :(得分:-1)
您应该使用setId()
方法为要创建的组件分配唯一的ID。
您可以自己生成id,或使用:
FacesContext.getCurrentInstance().getViewRoot().createUniqueId()
生成它们。