Simon Ammer created OLINGO-1167:
-----------------------------------

             Summary: Pojogen fails when resource has same name as primitive 
type
                 Key: OLINGO-1167
                 URL: https://issues.apache.org/jira/browse/OLINGO-1167
             Project: Olingo
          Issue Type: Bug
          Components: odata4-commons, odata4-ext
    Affects Versions: (Java) V4 4.3.0, (Java) V4 4.2.0
         Environment: EntityType with same name as EdmPrimitiveTypeKind. For 
instance: Binary
            Reporter: Simon Ammer
            Priority: Critical


At some parts Olingo does not use the fully qualified name of a resource to 
reference it.Therefore _pojogen_ fails when you have a resource with the same 
name as a value defined in 
[EdmPrimitiveTypeKind.java|https://github.com/apache/olingo-odata4/blob/6bc17b668c16bbf96458c996bb9d9a768c74dc98/lib/commons-api/src/main/java/org/apache/olingo/commons/api/edm/EdmPrimitiveTypeKind.java].
 Take the following scenario:
*$metadata*
{code:xml}
...
<EntityType Name="Binary">
  <Property Name="asset" Type="Edm.Int64"/>
  <Property Name="version" Type="Edm.Int64"/>
  <Property Name="type" Type="Edm.String"/>
  <Property Name="format" Type="Edm.String"/>
</EntityType>
...
{code}

My {{self.edu.Binary}} resource match with the primitive kind {{Edm.Binary}} 
due to the check in 
[EdmTypeInfo.java|https://github.com/apache/olingo-odata4/blob/4a51d16425144a7de0be0f9dcd01c667bed322df/lib/commons-core/src/main/java/org/apache/olingo/commons/core/edm/EdmTypeInfo.java#L107]:
{code:java}this.primitiveType = 
EdmPrimitiveTypeKind.valueOf(this.fullQualifiedName.getName());{code}
When the code generator tries to access the type of the entity which would not 
been done for primitives it throws a NullPointerException.





--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to