У меня есть форма Spring mvc, которая имеет атрибут модели.Эта модель имеет вложенный объект, который называется Address.Когда я отправляю форму, все не вложенные поля заполняются в модели нормально, но я получаю ошибку несоответствия типов для адреса.
Вот ошибка:
java.lang.IllegalStateException: Cannot convert value of type 'java.lang.String' to required type 'com.sample.types.Address' for property 'address': no matching editors or conversion strategy found
Контроллер, который заполняет представление формой, помещает объект персоны в MV, вот форма в JSP:
<form:form id="formId"
method="POST"
action="/submit"
modelAttribute="person">
<form:hidden path="name"/>
<form:hidden path="age" />
<form:hidden path="address"/>
</form:form>
Я вижу на странице с формой, что тег from конвертируется в следующее:
<input id="address" name="address" type="hidden" value="Address(line1=123 fake street, line2=null, line3=null, city=null, state=null, country=null, postalCode=null, addressId=123456)"/>
Из ошибки я получаю подсказку, что мне, вероятно, нужно определить что-то, что говорит Springкак преобразовать эту строку в объект Address.Это правильно или что-то еще не так?Где я могу найти документацию о том, как это сделать?
РЕДАКТИРОВАТЬ похоже, что я ищу форматировщики Spring: https://www.logicbig.com/tutorials/spring-framework/spring-web-mvc/spring-define-formatter.html, однако, кажется, что есть несколько способов сделать это.Конвертер vs Форматтер vs PropertyEditor.Кто-нибудь знает, что подходит для этого?