フォームがあり、オブジェクトの浮動小数点数の 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 機能を使用する必要がありますか?
ありがとう。