0

@InitBinder を Backbone.js で動作させるのに問題があります

@InitBinder
public final void initBinder(final WebDataBinder binder) {
    // Customer property editors
    binder.registerCustomEditor(MyObjectChild.class, new MyObjectChildEditor());
}

オブジェクトを受け入れるこのようなコントローラーがあります

@RequestMapping(
        produces = MediaType.APPLICATION_JSON_VALUE,
        consumes = MediaType.APPLICATION_JSON_VALUE,
        method = RequestMethod.POST)
@ResponseBody
@ResponseStatus(value = HttpStatus.CREATED)
public final String create(@RequestBody final MyObject myobject) {

    return "worked";
}

MyObject には MyObjectChild 型のプロパティがあります。このオブジェクトの ID 値をフロントエンドからコントローラーに渡したいと思います。これは、ユーザーが変更できるようにする (ドロップダウン リストから選択する) ことは意味がないためです。

@RequestBody が @InitBinder で機能しないことを読んだので、代わりに @ModelAttribute を試しましたが、Backbone.js を使用して JavaScript のフロントエンドで作成されるため、@ModelAttribute の名前がどうなるかわかりません。

Backbone.js を Spring @InitBinder と連携させるにはどうすればよいですか?

4

0 に答える 0