双方都有:
Class ListWrapper {
public List<String> l;
ListWrapper(List<String> l) {
this.l = l;
}
}
在客户端,我有:
ObjectMapper mapper = new ObjectMapper();
String fl;
try {
fl = mapper.writeValueAsString(new ListWrapper(u.getList()));
} catch (IOException e) {
fl = "null";
}
在服务器端,我有:
String data = getQuery().........;
List l = new ObjectMapper.readValue(data,ListWrapper.class).list;
但我得到了:
org.codehaus.jackson.map.JsonMappingException: Can not create Bean deserializer for ([simple type, class il.ac.technion.ssdl.hitch.resource.ListWrapper]): neither default/delegating constructor nor factory methods found
当我试图反序列化列表时。
编辑:
在客户端打印列表时,我得到了:
{"list":["v1","v2,"v3"]}
答案 0 :(得分:1)
发现默认/委托构造函数或工厂方法
您的ListWrapper
类可能缺少默认构造函数。
public ListWrapper(){
}
您的JSON字符串不正确:
{“list”:[“v1”,“v2,”v3“]}&lt;&lt;&lt; ---在v2之后缺少双引号!