У меня есть такой объект:
public class FormFields extends BaseObject implements Serializable {
private FieldType fieldType; //checkbox, text, radio
private List<FieldValue> value; //FieldValue contains simple string/int information, id, value, label
//other properties and getter/setters
}
Я перебираю список FormFields и, если fieldType не равен переключателю, я выводю список значений полей в JSP, используя
<c:forEach items=${formField.value}></c:forEach>
что все хорошо и отлично работает.
Помимо этого у меня есть проверка, является ли fieldType радио, в котором я использую:
<form:radiobuttons path="formFields[${formFieldRow.index}].value" items="${formField.value}" itemLabel="label" cssClass="radio"/>
Однако это вызывает у меня проблемы, когда я получаю такие ошибки:
Failed to convert property value of type [java.lang.String] to required type [java.util.List] for property formFields[11].value; nested exception is java.lang.IllegalArgumentException: Cannot convert value of type [java.lang.String] to required type [com.example.model.FieldValue] for property value[0]: no matching editors or conversion strategy found
Я гуглил это и искал переполнение стека и нашел ссылки на registerCustomEditor и подобные функции, но я не уверен, как правильно решить эту проблему.
Является ли редактор пользовательских свойств подходом к этому? Если так, как это будет работать?