[ 
https://issues.apache.org/jira/browse/OLINGO-414?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14193044#comment-14193044
 ] 

Giacomo Pati commented on OLINGO-414:
-------------------------------------

https://issues.apache.org/jira/browse/OLINGO-414?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14193015#comment-14193015
]
use case if I am not wrong. The JPA processor now should determine whether
to generate a simple SELECT statement or a SELECT statement with JOINS
based on the filter conditions.

Joins IIRC are determined on the JPA mappings (annotation or in orm.xml).
No need the JPA processor needs to care about.
The JPA processor only needs to care about joins when it comes to
fullfilling $expand requests for performance reasons (1+N problem).

property.  In our solution we have a Notification entity and a User entity,
we would like to retrieve a specific Notification but only if it is linked
to the requesting user.  This would involve an ODATA request which filters
on both the UserId and the NotificationId.  An example of the URL we are
invoking is:
dspplatform.svc/Notifications?$filter=NotificationId%20eq%204%20and%20UserDetails/UserId%20eq%202
org.apache.olingo.odata2.core.edm.provider.EdmNavigationPropertyImplProv
cannot be cast to org.apache.olingo.odata2.api.edm.EdmProperty
property as we need this as part of our core functionality?


> Cannot Filter on Navigation Property
> ------------------------------------
>
>                 Key: OLINGO-414
>                 URL: https://issues.apache.org/jira/browse/OLINGO-414
>             Project: Olingo
>          Issue Type: Bug
>          Components: odata2-jpa
>    Affects Versions: V2 2.0.0
>            Reporter: Simon Carroll
>            Assignee: Chandan V.A
>         Attachments: olingo-414-exception.diff, olingo-414-patch.diff
>
>
> We are receiving an error when we try to filter on a navigation property.  In 
> our solution we have a Notification entity and a User entity, we would like 
> to retrieve a specific Notification but only if it is linked to the 
> requesting user.  This would involve an ODATA request which filters on both 
> the UserId and the NotificationId.  An example of the URL we are invoking is:
> dspplatform.svc/Notifications?$filter=NotificationId%20eq%204%20and%20UserDetails/UserId%20eq%202
> This returns the following error:
> org.apache.olingo.odata2.core.edm.provider.EdmNavigationPropertyImplProv 
> cannot be cast to org.apache.olingo.odata2.api.edm.EdmProperty
> Can you please advise on how to perform filters on a Navigation property as 
> we need this as part of our core functionality?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to