avro-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thomas Lörtsch (JIRA) <j...@apache.org>
Subject [jira] [Commented] (AVRO-1807) NullPointerException from Json.ObjectWriter
Date Thu, 12 May 2016 07:32:12 GMT

    [ https://issues.apache.org/jira/browse/AVRO-1807?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15281283#comment-15281283
] 

Thomas Lörtsch commented on AVRO-1807:
--------------------------------------

Hi, 

I'm on vacation and though I do read mail I can't log into my JIRA account or even test the
patch. But please don't let it block the 1.8.1 release! 

Thanks for looking into this and for your detailed response in addition to the patch! 

Regards
Thomas Lörtsch 






> NullPointerException from Json.ObjectWriter
> -------------------------------------------
>
>                 Key: AVRO-1807
>                 URL: https://issues.apache.org/jira/browse/AVRO-1807
>             Project: Avro
>          Issue Type: Bug
>          Components: java
>    Affects Versions: 1.8.0
>         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
>            Reporter: Thomas Lörtsch
>            Assignee: Ryan Blue
>            Priority: Blocker
>         Attachments: AVRO-1807.1.patch
>
>
> /* I posted this bug already to the dev-mailinglist [4]. Reporting it here again only
to make sure it doesn't get lost and because this is the right place. */
> The complete, slightly more involved code is on [1], especially [2], the JSON schema
is at [3], but the relevant parts of the code follow below.
> {code}
> // 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);
> {code}
> The console will print out a nice JSON string (the payload), followed by the following
exception:
> {code}
> 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)
> {code}
> My beginners guess is that the source of the problem is a call of asToken() in org.codehaus.jackson.JsonNode,
which is abstract.
> [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
> [3] https://github.com/tomlurge/converTor/blob/master/src/converTor/avro/schemata/Torperf.avsc
> [4] https://mail-archives.apache.org/mod_mbox/avro-dev/201603.mbox/ajax/%3C828828B1-8A58-4050-81B4-C3EF0F26041B%40rat.io%3E



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message