Я пытаюсь добавить тесты в приложение Java Kafka Streams, которое использует эту тему. Я не могу понять, как создать сообщение с полем карты с записью типа массива. Вот что я по наивности пробовал:
Caused by: org.apache.avro.UnresolvedUnionException: Not in union ["null","string","boolean","int","long","float","double"]: [null, a string, true, 35, 20, 201.0, 202.0]
at org.apache.avro.generic.GenericData.resolveUnion(GenericData.java:896)
at org.apache.avro.generic.GenericDatumWriter.resolveUnion(GenericDatumWriter.java:272)
at org.apache.avro.generic.GenericDatumWriter.writeWithoutConversion(GenericDatumWriter.java:143)
at org.apache.avro.generic.GenericDatumWriter.write(GenericDatumWriter.java:83)
at org.apache.avro.generic.GenericDatumWriter.writeMap(GenericDatumWriter.java:305)
at org.apache.avro.generic.GenericDatumWriter.writeWithoutConversion(GenericDatumWriter.java:140)
...
Кто-нибудь знает, как создать объект Java, который я пытаюсь отправить?
[/code] Я пытаюсь добавить тесты в приложение Java Kafka Streams, которое использует эту тему. Я не могу понять, как создать сообщение с полем карты с записью типа массива. Вот что я по наивности пробовал: [code]Map myOverlyComplexMap = new HashMap(); List mixedTypeObjectArray = Arrays.asList( null, "a string", true, 35, 20L, 201f, 202d ); myOverlyComplexMap.put("arrayKey", mixedTypeObjectArray); ASillySchema testRecord = ASillySchema.newBuilder() .setMyOverlyComplexMap(myOverlyComplexMap) .build();
// send testRecord to topic using Java kafka producer... [/code] Я получаю следующую ошибку: [code]Caused by: org.apache.avro.UnresolvedUnionException: Not in union ["null","string","boolean","int","long","float","double"]: [null, a string, true, 35, 20, 201.0, 202.0] at org.apache.avro.generic.GenericData.resolveUnion(GenericData.java:896) at org.apache.avro.generic.GenericDatumWriter.resolveUnion(GenericDatumWriter.java:272) at org.apache.avro.generic.GenericDatumWriter.writeWithoutConversion(GenericDatumWriter.java:143) at org.apache.avro.generic.GenericDatumWriter.write(GenericDatumWriter.java:83) at org.apache.avro.generic.GenericDatumWriter.writeMap(GenericDatumWriter.java:305) at org.apache.avro.generic.GenericDatumWriter.writeWithoutConversion(GenericDatumWriter.java:140) ... [/code] Кто-нибудь знает, как создать объект Java, который я пытаюсь отправить?