Avroスキーマの新機能です。私はkafkaを使用して/コンシューマのJavaオブジェクトを公開しようとします。 私は、LocalDateTimeとbyte []のフィールドを含むjava beanクラスを持っています。 avroスキーマのプリミティブ型で両方を定義するにはどうすればよいですか? LocalDateTimeに使用できる最良のプリミティブ型は何ですか?avroスキーマでbyte []とLocalDateTimeを定義する方法は?
private LocalDateTime timestamp;
private byte[] content;
このように定義しました。しかし、取得
{
"name": "content", "type": "bytes"
},
クラスのキャスト例外[1]
[1]によって引き起こさ:java.lang.ClassCastExceptionが:[Bは org.apacheで java.nio.ByteBufferのにキャストすることはできません org.apache.avro.generic.GenericDatumWriter.writeFieldで.avro.generic.GenericDatumWriter.writeBytes org.apache.avro.generic.GenericDatumWriter.write(GenericDatumWriter.java:77)で(GenericDatumWriter.java:219) (GenericDatumWriter.java:114) 、 org.apache.avro.generic.GenericDatumWriter.writeRecord(GenericDatumWriter.java:104) でorg.apache.avro.generic.GenericDatumWriter.write(GenericDatumWriter.java:66) org.apache.avro.genericで.GenericDatumWriter.write(GenericDatumWriter.java:58)
「バイト[]」のAvroの「バイト」プリミティブはどうですか? http://avro.apache.org/docs/current/spec.html#schema_primitive –