コントローラーのプロパティ エディターを次のように指定しています。
@InitBinder
protected void initBinder(WebDataBinder binder) {
SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy");
CustomDateEditor editor = new CustomDateEditor(dateFormat, true);
binder.registerCustomEditor(Date.class, editor);
}
AJAX 呼び出しで次のメソッドを呼び出すまでは正常に動作します。
@RequestMapping(value = "searchCriteria", method = RequestMethod.GET)
public @ResponseBody Set<SearchCriteria> loadSearchCriterias(){
// call service method to load criterias
Set<SearchCriteria> criterias = new HashSet<SearchCriteria>();
SearchCriteria sampleCriteria = new SearchCriteria();
sampleCriteria.setStartDate(new Date());
criterias.add(sampleCriteria);
return criterias;
}
この場合、期日SearchCriteria
はカスタム プロパティ エディタによって適切な形式に変換されていません。AJAX 呼び出しでオブジェクトを返す場合でも、プロパティ エディターを適用するにはどうすればよいですか?
public class SearchCriteria{
Date startDate;
String name;
// getter setters
}