[ https://issues.apache.org/jira/browse/OLINGO-1123?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16059095#comment-16059095 ]
Frederik Zimmer commented on OLINGO-1123: ----------------------------------------- Hi Archana, I'm creating a new entity and I'm sending something like this: {"@odata.type":"#namespace.MyEntity","par...@odata.type":"#Collection(namespace.Param)","params":[{"@odata.type":"#namespace.StringParam","value":"1","i...@odata.type":"String","id":"stringParam1"}]} The metadata is: <EntityType Name="MyEntity"> <Property Name="params" Type="Collection(namespace.Param)"/> </EntityType> <ComplexType Name="Param" Abstract="true"> <Property Name="id" Type="Edm.String"/> </ComplexType> <ComplexType Name="StringParam" BaseType="namespace.Param"> <Property Name="value" Type="Edm.String"/> </ComplexType> Then I get this exception as the value property of the StringParam isn't read as it is deserialized as a Param: org.apache.olingo.server.api.deserializer.DeserializerException: Tree should be empty but still has content left: value at org.apache.olingo.server.core.deserializer.json.ODataJsonDeserializer.assertJsonNodeIsEmpty(ODataJsonDeserializer.java:836) at org.apache.olingo.server.core.deserializer.json.ODataJsonDeserializer.readComplexNode(ODataJsonDeserializer.java:542) at org.apache.olingo.server.core.deserializer.json.ODataJsonDeserializer.consumePropertyCollectionNode(ODataJsonDeserializer.java:573) at org.apache.olingo.server.core.deserializer.json.ODataJsonDeserializer.consumePropertyNode(ODataJsonDeserializer.java:495) at org.apache.olingo.server.core.deserializer.json.ODataJsonDeserializer.consumeEntityProperties(ODataJsonDeserializer.java:363) at org.apache.olingo.server.core.deserializer.json.ODataJsonDeserializer.consumeEntityNode(ODataJsonDeserializer.java:194) at org.apache.olingo.server.core.deserializer.json.ODataJsonDeserializer.entity(ODataJsonDeserializer.java:180) Regards, Frederik > Error deserialization of complex collection with derived type > ------------------------------------------------------------- > > Key: OLINGO-1123 > URL: https://issues.apache.org/jira/browse/OLINGO-1123 > Project: Olingo > Issue Type: Bug > Affects Versions: (Java) V4 4.3.0 > Reporter: Frederik Zimmer > > If a complex collection which contains entries with derived types is > deserialized the entries are deserialized with the collection type. This > results then in an error "DeserializerException: Tree should be empty but > still has content left" because the derived type has more properties which > are not read. > In ODataJsonDeserializer the method consumePropertyCollectionNode should > check with the collection node specifies it's own type and then use this type > for deserialization. -- This message was sent by Atlassian JIRA (v6.4.14#64029)