You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@olingo.apache.org by "Ramya (JIRA)" <ji...@apache.org> on 2018/02/21 04:54:00 UTC
[jira] [Resolved] (OLINGO-1231) Serializer for complex collection
properties does not respect $select
[ https://issues.apache.org/jira/browse/OLINGO-1231?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ramya resolved OLINGO-1231.
---------------------------
Resolution: Fixed
> Serializer for complex collection properties does not respect $select
> ---------------------------------------------------------------------
>
> Key: OLINGO-1231
> URL: https://issues.apache.org/jira/browse/OLINGO-1231
> Project: Olingo
> Issue Type: Bug
> Components: odata4-server
> Affects Versions: (Java) V4 4.4.0
> Reporter: Oliver Grande
> Priority: Major
> Labels: patch
>
> I have an entity type that contains a complex collection property:
>
> {code:xml}
> <EntityType Name="Person">
> <Property Name="BirthDay" Type="Edm.Date"/>
> <Property Name="LastName" Type="Edm.String" MaxLength="255"/>
> <Property Name="FirstName" Type="Edm.String" MaxLength="255"/>
> <Property Name="InhouseAddress" Type="Collection(dummy.InhouseAddress)">
> {code}
>
> Now I can try to restrict the returned columns using $select:
>
> {code:java}
> .../Persons('99')/InhouseAddress?$select=Building,TaskID{code}
> The serializer (JSON as well as XML) do not respect the $select and fills all not retrieved properties with null:
> {code:xml}
> <m:value m:type="#Collection(dummy.InhouseAddress)" m:context="$metadata#Persons/InhouseAddress">
> <m:element>
> <d:RoomNumber m:null="true"/>
> <d:Floor m:null="true"/>
> <d:TaskID>DEV</d:TaskID>
> <d:Building>1</d:Building>
> </m:element>
> </m:value>
> {code}
>
> It looks like this is because _ODataXmlSerializer.complexCollection_ sets the parameter selectedPaths to _null_ when calling writeComplexValue
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)