Odata V4 reference service produces incorrect Metadata without alias/namespace
The http://services.odata.org/TripPinRESTierService/ service returns the following annotation:
...
<EntitySet Name="Airlines" EntityType="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Airline"> <Annotation Term="Org.OData.Core.V1.OptimisticConcurrency"> <Collection> <PropertyPath>Name</PropertyPath> </Collection> </Annotation> </EntitySet> ...
unfortunately, the used Org.OData.Core.V1 namespace is not referencing anywhere an alias or namespace in the schema.
This results, when retrieving the code with the latest available OData V4 Lib for Java, in the EdmAnnotationClass Code
public EdmTerm getTerm() { if (term == null) { if (annotation.getTerm() == null) { throw new EdmException("Term must not be null for an annotation."); } term = edm.getTerm(new FullQualifiedName(annotation.getTerm())); } return term; }
that in debugging the annotation.getTerm()=="Org.OData.Core.V1.OptimisticConcurrency" but the term is then set to null from edm.getTerm() as it seems to check for available namespace/aliases in the schema and cannot find one.
So practically, this annotation does not exist for the currently latest Olingo-OData-Client-for-Java-4.3.0
I have cross created this issue in https://issues.apache.org/jira/browse/OLINGO-1062 as i am not sure, wether the service is not correct or the client should be more forgiving
Any updated in this?