Spring 3 связывает список объектов с примитивным типом данных

Я начинаю и использую Spring 3.

У меня есть следующие бобы

public class Record {
 private String title;
 private ****** amount;

 //Getter and Setter
}

public class RecordBean {
 private List<record> records;

 public RecordBean() {
 this.records = LazyList.lazyList(new ArrayList<record>(), new InstantiateFactory<record>(Record.class));
 }

 //Getter and Setter
}
</record></record></record>

Я добавил RecordBean для model

modelMap.add('recordBean',new RecordBean());

Ниже приведена Spring Form

<form:form action="/save" method="POST" commandname="recordBean">

 <form:input path="records[0].title">
 <form:input path="records[0].amount">

 <form:input path="records[1].title">
 <form:input path="records[1].amount">

 
</form:input></form:input></form:input></form:input></form:form>

Я также добавил InitBinder в контроллер

@InitBinder
public void initBinder(WebDataBinder binder) {
 binder.registerCustomEditor(******.class, new CustomNumberEditor(******.class, true));
}

Теперь, если я ввожу значение для amount[0] и оставьте пустым для amount[1] и отправьте форму, я получаю ошибку typeMismatch.

Field error in object 'recordBean' on field 'records[1].amount': rejected value []; codes [typeMismatch.recordBean.records[1].amount,typeMismatch.recordBean.records.amount,typeMismatch.records[1].amount,typeMismatch.records.amount,typeMismatch.amount,typeMismatch.******,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [recordBean.records[1].amount,records[1].amount]; arguments []; default message [records[1].amount]]; default message [Failed to convert property value of type 'java.lang.String' to required type '******' for property 'records[1].amount'; nested exception is java.lang.NumberFormatException: empty String]

Пожалуйста, порекомендуйте.

благодаря

1 ответ

Возможно, попробуйте перейти от: "******" к "******" для этой строки:

private ****** amount;

licensed under cc by-sa 3.0 with attribution.