当前位置:  开发笔记 > 前端 > 正文

Android使用MSGPack Core和Jackson Mapper - 解码未知类型的类变量

如何解决《Android使用MSGPackCore和JacksonMapper-解码未知类型的类变量》经验,为你挑选了0个好方法。

我正在从服务器向Android发送/接收自定义类,该类为;

import org.msgpack.value.Value;
public class myClass {

    public String status;
    public Value data;

}

问题是我总是得到错误;

com.fasterxml.jackson.databind.JsonMappingException: Can not construct instance of org.msgpack.value.Value, problem: abstract types either need to be mapped to concrete types, have custom deserializer, or be instantiated with additional type information
        at [Source: java.io.BufferedInputStream@f478759; line: -1, column: 100] (through reference chain:xxx.xxxxxxxxxx.xxx.xxxxxx.myClass["data"]

如果我改变变量"data" MAP data然后它工作正常,但数据是未知类型!(通常HashMap或数组可能是String,而不是其他类).

MessagePackFactory factory = new MessagePackFactory();
ObjectMapper mapper = new ObjectMapper(factory);
myClass response = mapper.readValue(inputStream, myClass.class);

如何指定未知类型?

推荐阅读
放ch养奶牛
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有