| Summary: | Null Pointer Exception in deserializer when using annotation fields that are defined as nullable array | ||
|---|---|---|---|
| Product: | z_Archived | Reporter: | Paul Harmon <pharmon> |
| Component: | EDT | Assignee: | Project Inbox <edt.mofmodel-inbox> |
| Status: | CLOSED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | svihovec |
| Version: | unspecified | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Windows XP | ||
| Whiteboard: | |||
XmlDesrializer has been updated to fix this scenerio verified |
Compile the following: record BugAnn type annotation { targets=[FieldMbr] } value int[]?; end library lib1 field1 string {BugAnn = [1,2,3]}; end Then attempt to deserialize lib1. You will get a NPE in the XMLDeserializer. This is because InternalEObject.init() does not initialze fields that are defined as nullable. So, when the deserializer attempts to add the value to the field's list, a NPE is thrown, because the field's value is null. A fix needs to be added to XMLDeserializer so that we instantiate an EList in the case where the field is a nullable array.