【发布时间】:2011-07-19 20:29:56
【问题描述】:
我有一个元素类型的对象,它有一个主题类型的属性。当我创建一个新元素时由视图中的主题选择表示,主键是选择中项目的值,当我使用 json 发送时,spring 尝试创建一个对象元素,下一个错误是 show
/element: org.codehaus.jackson.map.JsonMappingException: 无法构造 com.example.Theme 的实例,问题:找不到合适的创建者方法 在 [来源:org.mortbay.jetty.HttpParser$Input@dd0099;行:1,列:31]
这是我在 Spring MVC 中的代码
public class Element {
private String name;
private String type;
private Theme theme;
private String description;
// Get - Set
}
主题类
public class Theme {
private String name;
private String description;
// Get - Set
}
控制器中的方法
@RequestMapping(method=RequestMethod.POST)
public @ResponseBody String create(@RequestBody Element element){
elementManager.saveElement(element);
return "exito";
}
JavaScript 是这样的
$("#element").submit(function() {
var element = $(this).serializeObject();
$.postJSON("element", element, function(data) {
});
return false;
});
我希望有人可以帮助我。
【问题讨论】:
-
你的 Theme 类是什么样的?
-
是简单的 POJO ,已经编辑过帖子
-
那么实际传入的 JSON 呢?那看起来像什么?
-
这是发送到服务器并接收 spring 的 json ,属性 theme 是对象 theme {"name":"rooms","type":"Doc"," theme":"aglub19hcHBfaWRyCwsSBVRoZW1lGAkM","description":"它们真的很大"}
标签: javascript json spring spring-mvc