Roger Che created OLINGO-1261:
---------------------------------

             Summary: The target binding type should be available from 
Navigation Property
                 Key: OLINGO-1261
                 URL: https://issues.apache.org/jira/browse/OLINGO-1261
             Project: Olingo
          Issue Type: Bug
          Components: odata4-server
    Affects Versions: (Java) V4 4.4.0
            Reporter: Roger Che
         Attachments: Zoo.xml

The Navigation Property can declare with a (collection of) parent type and bind 
to a sub type EntitySet. See 

org.apache.olingo.client.core.metadatavalidator.EdmTypeValidator#validateNavigationBindingPaths

But in the runtime, the Navigation Property always return a type of the declare 
type but not the binding type. This can cause problem when the Navigation 
Property is declare with a parent type while in the EntitySet/Singleton it is 
bind to the child type Entity Set. See the uploaded Zoo.xml. The problems 
includes.
 # When sending GET request to [http://localhost:8080/zoo.svc/Zoo/Animals.] I 
expect to get the binding type 'Tiger' for UriResourceNavigation 'Animals'. 
Because in the metadata, the Singleton Zoo bind the Animals to 
Collection(Tiger). But there is no such API. I can only use the API 
UriResourceNavigation#getProperty()#getType() to get the declaring type 
'Animal'. Since I cannot get the actual binding type. I cannot serialize the 
entity with a Tiger type which includes the property 'Weight'
 # When sending POST request to do the deep insert to 
[http://localhost:8080/zoo.svc/Zoo/Animals.] with the payload 
\{"Id":"tiger-002", "Name": "test test", "Weight": 150}. I still expect to get 
binding type 'Tiger' for UriResourceNavigation 'Animals'. So that i can 
deserialize the bod to an entity of Tiger. But I can only get the type 'Animal' 
for UriResourceNavigation 'Animals' from existing API. And it will throw me an 
exception telling that 
"'Weight' can not be mapped as a property or an annotation." 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to