相关疑难解决方法(0)

将Avro生成的对象序列化为json时发生JsonMappingException

我使用avro-tools使用以下命令从avsc文件生成Java类:

java.exe -jar avro-tools-1.7.7.jar compile -string schema myfile.avsc 
Run Code Online (Sandbox Code Playgroud)

然后,我尝试通过ObjectMapper将此类对象序列化为json,但始终收到一个JsonMappingException,说“不是枚举”或“不是联合”。在测试中,我使用生成器或构造器创建了生成的对象。对于不同类的对象,我得到了这样的例外...

样例代码:

ObjectMapper serializer = new ObjectMapper(); // com.fasterxml.jackson.databind
serializer.register(new JtsModule()); // com.bedatadriven.jackson.datatype.jts
...
return serializer.writeValueAsBytes(avroConvertedObject); // => JsonMappingException
Run Code Online (Sandbox Code Playgroud)

我还使用以下方法尝试了许多配置:serializer.configure(...),但仍然失败。 版本: Java 1.8,jackson-datatype-jts 2.3,jackson-core 2.6.5,jackson-databind 2.6.5,jackson-annotations 2.6.5

有什么建议么?谢谢!

java serialization json avro

5
推荐指数
2
解决办法
2278
查看次数

标签 统计

avro ×1

java ×1

json ×1

serialization ×1