【发布时间】:2015-11-10 20:37:04
【问题描述】:
我在 Spring MVC API 中有一个 CRUD 控制器。
这是我的创建方法:
@Override
@JsonView(ApiView.FormView.class)
@RequestMapping(method = RequestMethod.POST, consumes = ApiMediaType.jsonContentType, produces = ApiMediaType.jsonContentType)
public ApiResponse create(@RequestBody @Valid Entity entity, BindingResult result) {
if (result.hasErrors()) return new ApiResponse(result.getAllErrors());
service.add(entity);
return new ApiResponse(entity);
}
这很好用。
如果我将此类数据发送到 API,它会起作用
{
"email":"user@company.com",
"password":"secret!",
"firstName":"John",
"lastName":"Doe",
"title":"Mr."
}
问题是我将 Ember JS 与 Ember Data 一起使用。我的适配器正在发送这些数据:
{
"data":{
"attributes":{
"email":"user@company.com",
"firstName":"John",
"lastName":"Doe",
"title":"Mr.",
},
"type":"users"
}
}
这不是 @Valid User form,我的 UserController 期望在下面声明的 create 方法中:
public ApiResponse create(@RequestBody @Valid User form, BindingResult result) {}
如何将 Ember 发送到用户对象的数据转换为我的 Spring 应用程序?
感谢和抱歉我的英语。
【问题讨论】:
标签: spring spring-mvc ember.js ember-data crud