У меня есть форма, и я зарегистрировал CustomNumberEditor для чисел с плавающей точкой моих объектов.
@InitBinder
public void initBinder(WebDataBinder binder){
NumberFormat numberFormat = NumberFormat.getInstance();
binder.registerCustomEditor(Float.class, new CustomNumberEditor(Float.class, numberFormat, true));
}
У меня есть метод контроллера ajax для обновления раздела формы (он просто возвращает обновленный HTMLфрагмент) поэтому в контроллере я делаю что-то вроде этого:
public String retrieveFormSection(@PathVariable("id") String id, Model model) {
...
model.addAttribute("myObject", myObject);
return "myJSP";
}
В этом JSP я просто хочу напечатать некоторые данные, используя редакторы:
<input type="text" value="${myObject.myNumber}"/>
Поскольку myObject не помещаетсяобъект @ModelAttribute, редактор для него не используется.Есть ли способ зарегистрировать редакторы для полей в объектах, которые я добавляю в модель?Возможно, редакторы не должны использоваться для этого, потому что таким образом я использую только метод getAsText () редактора, а не setAsText ().Должен ли я использовать другую функцию Spring для этого?
Спасибо.