![](/img/trans.png)
[英]JSON to Java object - Unrecognized field, not marked as ignorable
[英]JSON : Unrecognized field “value” (<objectClass>), not marked as ignorable
有人可以幫我弄清楚需要添加什么嗎?
JSON:
{"value":{"keyword":"better","correct":"","page":0,"size":10,"cost":51,"total":1107}}
對象類
@JsonAutoDetect
@JsonSerialize(include = Inclusion.NON_NULL)
@JsonRootName(value = "value")
public class Response {
private int page;
private int size;
private int total;
private int cost;
private int result;
private String keyword;
private String correct;
它仍然得到servlet appServlet的“Servlet.service()引發異常
org.codehaus.jackson.map.exc.UnrecognizedPropertyException:無法識別的字段“value”(),未標記為可忽略“
嘗試將此添加到您的映射器配置中
mapper.configure(SerializationConfig.Feature.WRAP_ROOT_VALUE, true);
mapper.configure(DeserializationConfig.Feature.UNWRAP_ROOT_VALUE, true);
如果使用RestTemplate,則需要配置底層的jackson映射器。 您可以通過配置映射器並在轉換器中進行設置來完成此操作。 見下面的代碼。
ObjectMapper mapper = new ObjectMapper();
mapper.configure(SerializationConfig.Feature.WRAP_ROOT_VALUE, true);
mapper.configure(DeserializationConfig.Feature.UNWRAP_ROOT_VALUE, true);
MappingJacksonHttpMessageConverter messageConverter = new MappingJacksonHttpMessageConverter();
messageConverter.setObjectMapper(mapper);
List<HttpMessageConverter<?>> messageConverters = new ArrayList<HttpMessageConverter<?>>();
messageConverters.add(messageConverter);
RestTemplate restTemplate = new RestTemplate();
restTemplate.setMessageConverters(messageConverters);
有關詳細信息,請參見此處: https : //jira.springsource.org/browse/ANDROID-45
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.