小编sup*_*eny的帖子

Avro ReflectDatumWriter中的NullPointerException

我对Java对象的Avro序列化有一个特定的问题.我有从xsd架构生成的POJO,然后我尝试使用av​​ro序列化放置在kafka主题上.一些xmlElements是可选的

测试消息如下所示:

@XmlRootElement(name = "message")
public class Testmessage {

  @XmlElement
  public String id;


  @XmlElement
  public String name;

  public Testmessage(String id, String name) {
    this.id = id;
    this.name = name;
  }

  public Testmessage() { }

  @Override
  public String toString() {
    return "Message{" +
        "id='" + id + '\'' +
        ", name=" + name +
        '}';
  }
}
Run Code Online (Sandbox Code Playgroud)

序列化和放置主题的方法是:

public void sendMessage(Testmessage msg) throws Exception{

    DatumWriter<Testmessage> writer = new ReflectDatumWriter<Testmessage>(Testmessage.class); 
    ByteArrayOutputStream os = new ByteArrayOutputStream();

    Encoder encoder = EncoderFactory.get().binaryEncoder(os, null);
    writer.write(msg, encoder); …
Run Code Online (Sandbox Code Playgroud)

java reflection serialization avro

4
推荐指数
1
解决办法
3716
查看次数

标签 统计

avro ×1

java ×1

reflection ×1

serialization ×1