Roman Vink created OLINGO-1319: ----------------------------------- Summary: filter on navigation property rejected by parser Key: OLINGO-1319 URL: https://issues.apache.org/jira/browse/OLINGO-1319 Project: Olingo Issue Type: Bug Components: odata4-server Affects Versions: (Java) V4 4.4.0, (Java) V4 4.3.0, (Java) V4 4.2.0 Reporter: Roman Vink
Here is a simple setup: EntityType Name="device" OpenType="true"> <Key> <PropertyRef Name="ID"/> </Key> <Property Name="ID" Type="Edm.Int64" Nullable="false"/> <Property Name="Name" Type="Edm.String"/> <NavigationProperty Name="components" Type="Collection(com.im.odata.component)" Partner="device"/> </EntityType> <EntityType Name="component" OpenType="true"> <Key> <PropertyRef Name="ID"/> </Key> <Property Name="ID" Type="Edm.Int64" Nullable="false"/> <Property Name="DeviceItemID" Type="Edm.Int32"/> <Property Name="Name" Type="Edm.String"/> <NavigationProperty Name="device" Type="com.im.odata.device" Nullable="false" Partner="components"/> </EntityType> 1 to many relationship between device and components. a query like devices?&$filter=components/any(s:DeviceItemID eq 35) would fail with java.lang.AssertionError: exception: The property 'DeviceItemID', used in a query expression, is not defined in type 'com.im.odata.device'. [HTTP/1.1 400 Bad Request] devices?&$filter=components/any(s:ID eq 35) would work fine -- This message was sent by Atlassian JIRA (v7.6.3#76005)