Установка списка предметов во льду: Selectonemenu
-
08-10-2019 - |
Вопрос
Я хочу установить элементы из списка в селектонумену в ледяных сна. Но когда я делаю то же самое, я получаю следующую ошибку: java.lang.classcastexception: нельзя бросить javax.faces.model.selectiTem.
Это класс сущности.
Пожалуйста помоги.
Решение
Обычный способ создания и заполнения selectOneMenu
Предметы будут следующие:
private String selectedItem; // +getter +setter
private List<SelectItem> selectItems; // +getter
public Bean() {
selectItems = new ArrayList<SelectItem>();
for (Entity entity : getYourEntities()) {
selectItems.add(new SelectItem(entity.getValue(), entity.getLabel()));
}
}
Со следующим видом (вы можете легко подходить вам <h:
с участием <ice:
):
<h:selectOneMenu value="#{bean.selectedItem}">
<f:selectItems value="#{bean.selectItems}" />
</h:selectOneMenu>
Вместо а String
значение, вы также можете использовать любой Number
(Integer
, Long
, и т. Д.) Поскольку JSF встроил конвертеры для этого. Но если вы хотите использовать целые объекты в качестве значения элемента, вам нужно создать Converter
. Отказ Это подробно описано в эта статья.
Не связан с StackOverflow