Hi,
this is a bug report. I assume that this is _not_ the right place to report
bugs but I really can’t find where to file it on [0]. If somebody can show me
where to click there (or anywhere else) I’ll happily do that. Until then I’ll
have at least posted it here (and off my chest).
Avro:
NullPointerException from Json.ObjectWriter
Environment:
avro 1.8.0, jackson-core-asl 1.9.13, jackson-mapper-asl 1.9.13, Java 7, Mac OS
X 10.11.3
Description:
The complete, slightly more involved code is on [1], especially [2], but the
relevant parts are as follows:
// parsing the schema
Schema.Parser parser = new Schema.Parser();
Schema schema = parser.parse(new File("schema.avsc")) ;
// setting up the encoder and driver
Json.ObjectWriter jsonDatumWriter = new Json.ObjectWriter();
OutputStream output = new FileOutputStream(new File("output.json"));
Encoder encoder = EncoderFactory.get().jsonEncoder(schema, output, pretty);
// writing
System.out.println(payload); // reassuring test the payload is intact
jsonDatumWriter.write(payload, encoder);
The console will print out a nice JSON string (the payload), followed by the
following exception:
Exception in thread "main" java.lang.NullPointerException
at org.apache.avro.data.Json.write(Json.java:183)
at org.apache.avro.data.Json.writeObject(Json.java:272)
at org.apache.avro.data.Json.access$000(Json.java:48)
at org.apache.avro.data.Json$ObjectWriter.write(Json.java:122)
at converTor.WriterObject.append(WriterObject.java:59)
at converTor.ConverTor.main(ConverTor.java:251)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
My beginners guess is that the source of the problem is a call of asToken() in
org.codehaus.jackson.JsonNode, which is abstract.
Regards,
Thomas
[0]
https://issues.apache.org/jira/browse/avro/?selectedTab=com.atlassian.jira.jira-projects-plugin:summary-panel
[1] https://github.com/tomlurge/converTor
[2]
https://github.com/tomlurge/converTor/blob/master/src/converTor/WriterObject.java