[ https://issues.apache.org/jira/browse/OLINGO-1064?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Christian Amend resolved OLINGO-1064. ------------------------------------- Resolution: Fixed Fix Version/s: (Java) V4 4.4.0 Thanks for the contribution. I applied the patch with the following commit: https://git-wip-us.apache.org/repos/asf?p=olingo-odata4.git;a=commit;h=272719d59fe84e7010b7c2117c1db0c31bfc0e00 > ComplexType is deserialized as Primitive Type if the value is NULL > ------------------------------------------------------------------ > > Key: OLINGO-1064 > URL: https://issues.apache.org/jira/browse/OLINGO-1064 > Project: Olingo > Issue Type: Bug > Components: odata4-client, odata4-commons > Affects Versions: (Java) V4 4.2.0 > Reporter: Punith DG > Assignee: Christian Amend > Fix For: (Java) V4 4.4.0 > > Attachments: complexType.png, OLINGO-1064.diff > > > The ODataClient deserializer wrongly converts the Complex Type field to > Primitive Type field if the value received for the complex type is NULL. > e.g. on querying Person data from OData TripPin service > (https://services.odata.org/TripPinRESTierService) I received below JSON > response. > { > "@odata.context": > "http://services.odata.org/TripPinRESTierService/(S(myhztseklikbg41mbg03ugk5))/$metadata#People(AddressInfo,FavoriteFeature,FirstName,HomeAddress,LastName,UserName)", > "value": [{ > "FavoriteFeature": "Feature1", > "FirstName": "Angel", > "Gender": "Female", > "LastName": "Huffman", > "UserName": "angelhuffman", > "AddressInfo": [{ > "Address": "55 Grizzly Peak Rd.", > "City": { > "Name": "Butte", > "CountryRegion": "United States", > "Region": "MT" > } > }], > "HomeAddress": null > }] > } > See that 'HomeAddress' is ComplexType of type 'Location' and received 'null' > value. > Similarly, ComplexType property 'City' is deserialized as Primitive Type in > the below response. > "HomeAddress": { > "Address": null, > "City": null > } > When you deserialize and get an entity, the HomeAddress property of the > Person entity is set to Primitive Type with null value. This could be complex > type? > Metadata URL - http://tinyurl.com/gm8vomc -- This message was sent by Atlassian JIRA (v6.3.15#6346)