0
我需要映射是这样的:JSON春控制器与POJO和枚举
JSON:
{'field1': 'value1', 'provider': {'name': 'nameprov', 'country': 'CODE'}}
到Spring MVC的控制器:
@ResponseBody
Dummy getVal(@RequestBody MyCriteria criteria) {
凡MyCriteria,其实,是一个延伸的类:
public abstract class MyCriteria {
String field1;
//Getter and setter
Provider provider;
//Getter and setter
}
但提供者有一个enum里面:
public class Provider{
String name;
Country country; //Country is an Enum
所以,我创建了一些转换器,但它不起作用。
我加入他们的web配置:
字符串国家:
public Country convert(String s) {
//It never enters here
}
和字符串提供者:
@Override
public Provider convert(String[] s) {
//never here
}
所以我的问题是:我在做什么错误?我需要映射一个字符串,国家,后来到供应商,但我有此错误:
Could not read document: Can not construct instance of ...Provider: no suitable constructor found, can not deserialize from Object value...
提供商有这样的构造:
public Provider(String name, String country)
public Provider(String name, Country country)
任何线索,将感激不尽。谢谢!
哦!谢谢!另外,正如我怀疑的那样,所有的转换器都没有必要实现正确的映射。 – MarcosTonina