Я пытаюсь реализовать преобразователь OmniFaces omnifaces.SelectItemsIndexConverter в инструмент отслеживания ошибок, над которым я работаю.
Невозможно преобразовать объект для управляемого компонента при нажатии кнопки отправки формы
Запуск NetBeans 8.2, с JSF 2.2 Java EE 7, GlassFish 4.1.1.Использование OmniFaces 2.7.1
Ввод формы JSF:
<h:selectOneMenu id="priority" value = "#{createBugManagedBean.priority}" converter="omnifaces.SelectItemsIndexConverter">
<f:selectItems value="#{createBugManagedBean.priorities}" var="priorities" itemValue="#{priorities}" itemLabel="#{priorities.name}"/>
</h:selectOneMenu>
Управляемые объекты EJB:
private BugPrioritiesDTO priority;
private ArrayList<BugPrioritiesDTO> priorities;
Класс BugPrioritiesDTO:
public class BugPrioritiesDTO implements Serializable {
Integer id;
String name;
public BugPrioritiesDTO(Integer id, String name) {
this.id = id;
this.name = name;
}
public Integer getId() {
return id;
}
public String getName() {
return name;
}
}
Thisэто то, что выплевывает на веб-страницу при нажатии кнопки отправки формы.
Could not convert value '0' for component j_idt18:priority.
Could not convert value '0' for component j_idt18:severity.
Не уверен, что это означает под значением '0'.Буквально пытается преобразовать целое значение 0 в объект или 0 обозначает индекс объекта, который я пытаюсь преобразовать?
0 - это первичный ключ, представляющий значение приоритета «Самый низкий».Если я изменяю приоритет на «Низкий», он говорит, что не может преобразовать значение «1», «Средний» равен «2» ... и т. Д.