Я создал модель с рекурсивным отношением, но когда я показываю ее в form:select
в представлении JSP, она возвращает ошибку о преобразованиях типов данных, как я могу показать рекурсивную модель в представлении JSP?
Я использую Java 1.8 и Spring-Core 4.1.
Когда я показываю строку базы данных, это рекурсивное поле null
, оно работает, но когда я пытаюсь показать строку срекурсивное поле заполнено допустимым значением, оно не работает и генерирует ошибку.
это поле модели из класса Category
@OneToOne(fetch=FetchType.LAZY, cascade=CascadeType.ALL)
@JoinColumn(nullable=true)
private Category subCategory;
мой контроллер отправляет в представление JSP, объект Category с именем "category"
modelAndView.addObject("category", category);
в представлении Я показываю объект с помощью формы: выберите компонент
<form:select path="subCategory.id"
id="category_subCategory"
multiple="false"
cssClass="form-control">
<form:option value="null">-</form:option>
<form:options items="${categories}"
itemValue="id"
itemLabel="name"/>
</form:select>
Вместо отображения компонента, он ломается игенерация ошибки ниже:
26 июня 2019 г. 16:03:09. org.apache.catalina.core.ApplicationDispatcher вызывает SEVERE: Servlet.service () для сервлета [jsp] вызвал исключительную ситуацию Java.lang.NumberFormatException: для входной строки:«null» в java.lang.NumberFormatException.forInputString (NumberFormatException.java:65) ...
26 июня 2019 г. 16:03:09 org.apache.catalina.core.StandardWrapperValve вызывает SEVERE: сервлет.service () для сервлета [dispatcher] в контексте с путем [/ ecommerce] вызвала исключение [javax.servlet.ServletException: javax.servlet.jsp.JspException: org.springframework.core.convert.ConversionFailedException: не удалось преобразовать из типа java.lang.String для типа @ javax.persistence.Id @ javax.persistence.GeneratedValue java.lang.Integer для значения 'null';Вложенное исключение: java.lang.NumberFormatException: для входной строки: «null»] с первопричиной java.lang.NumberFormatException: для входной строки: «null» ...