Skip to content

NullPointerException when using asExtraForUnknownProperties = true #133

@adgadre

Description

@adgadre

Hi,

First of all I want to thank you for this amazing API. I was trying to test the " @JsonObject(asExtraForUnknownProperties = true)" and ran into NullpointerException.

I think it may be a bug. But, please let me know if I'm doing something wrong.

Here is the test code:

public class TestExtraProperties {

@JsonObject(asExtraForUnknownProperties = true)
public static class TestObject13 {
	int id;
}

public static void test_unknown_properties() throws IOException {
    try {
    	String json = "{ \"id\": 100 }";
    	TestObject13 obj = JsonIterator.deserialize(json, TestObject13.class);

    } catch (JsonException e) {
        System.out.println(e);
    }
}

public static void main(String[] args) {
	try {
		test_unknown_properties();
	} catch (IOException e) {
		e.printStackTrace();
	}
}

}

The Exception stack trace is:

Exception in thread "main" java.lang.NullPointerException
at com.jsoniter.ReflectionObjectDecoder.setExtra(ReflectionObjectDecoder.java:352)
at com.jsoniter.ReflectionObjectDecoder.access$9(ReflectionObjectDecoder.java:349)
at com.jsoniter.ReflectionObjectDecoder$OnlyField.decode_(ReflectionObjectDecoder.java:174)
at com.jsoniter.ReflectionObjectDecoder$OnlyField.decode(ReflectionObjectDecoder.java:119)
at com.jsoniter.JsonIterator.read(JsonIterator.java:369)
at com.jsoniter.JsonIterator.read(JsonIterator.java:359)
at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:425)
at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:395)
at com.jsoniter.TestExtraProperties.test_unknown_properties(TestExtraProperties.java:29)
at com.jsoniter.TestExtraProperties.main(TestExtraProperties.java:38)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions