Несмотря на примеры, собранные здесь и там, я не смог создать правильную схему Avro 1.9.1 для моего (lomboked) класса, получая сообщение об ошибке заголовка во время сериализации моего поля LocalDate , Может кто-нибудь объяснить, что мне не хватает?
@Data
public class Person {
private Long id;
private String firstname;
private LocalDate birth;
private Integer votes = 0;
}
Это схема:
{
"type": "record",
"name": "Person",
"namespace": "com.example.demo",
"fields": [
{
"name": "id",
"type": "long"
},
{
"name": "firstname",
"type": "string"
},
{
"name": "birth",
"type": [ "null", { "type": "int", "logicalType": "date" }]
},
{
"name": "votes",
"type": "int"
}]
}
Ошибка, означающая java .time.LocalDate, не найдена в объединении. Карта "index named", это: org. apache .avro.UnresolvedUnionException: не в объединении ["null", {"type": "int", "logicType": "date"}]: 2001-01- 01
Именованные ключи карты индекса имеют значение "null" и "int", что кажется логичным.