[
https://issues.apache.org/jira/browse/OLINGO-1217?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jordi Cabré updated OLINGO-1217:
--------------------------------
Description:
I've modeled a single open entity type like:
{code:java}
public CsdlEntityType getEntityType(final FullQualifiedName entityTypeName)
throws ODataException
{
if (ET_RESOURCE.equals(entityTypeName)) {
return new CsdlEntityType()
.setName(ET_RESOURCE.getName())
.setKey(Arrays.asList(new CsdlPropertyRef().setName("Id")))
.setOpenType(true)
.setProperties(
Arrays.asList(
new
CsdlProperty().setName("Id").setType(EdmPrimitiveTypeKind.String.getFullQualifiedName())
)
);
}
return null;
}
{code}
As you can see this *Resource* type has a single *Id* property and the other
ones are _dynamic_ properties.
I've launched this request to my server:
{noformat}
http://localhost:8080/olingo/odata/Resources?$apply=groupby((propertyX,Id))
{noformat}
So, I'm grouping resources by a _dynamic_ property *propertyX*. I'm getting
this message:
{code:javascript}
{
"error": {
"code": null,
"message": "The property '', used in a query expression, is not defined
in type 'propertyX'."
}
}
{code}
Metadata (
{noformat}
http://localhost:8080/olingo/odata/$metadata
{noformat}
)
{code:xml}
<?xml version='1.0' encoding='UTF-8'?>
<edmx:Edmx Version="4.0" xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx">
<edmx:DataServices>
<Schema xmlns="http://docs.oasis-open.org/odata/ns/edm"
Namespace="swiller.odata.sample">
<EntityType Name="Resource">
<Key>
<PropertyRef Name="Id"/>
</Key>
<Property Name="Id" Type="Edm.String"/>
<Property Name="TimeStamp" Type="Edm.Date"/>
<Property Name="ModifiedTimeStamp" Type="Edm.Date"/>
<Property Name="Price" Type="Edm.Decimal" Scale="2"/>
</EntityType>
<EntityContainer Name="Container">
<EntitySet Name="Resources"
EntityType="swiller.odata.sample.Resource"/>
</EntityContainer>
</Schema>
</edmx:DataServices>
</edmx:Edmx>
{code}
Despite of I've set the `Resource` entity type is an open type, this is not
populated on metadata.
Any ideas?
was:
I've modeled a single open entity type like:
{code:java}
public CsdlEntityType getEntityType(final FullQualifiedName entityTypeName)
throws ODataException
{
if (ET_RESOURCE.equals(entityTypeName)) {
return new CsdlEntityType()
.setName(ET_RESOURCE.getName())
.setKey(Arrays.asList(new CsdlPropertyRef().setName("Id")))
.setOpenType(true)
.setProperties(
Arrays.asList(
new
CsdlProperty().setName("Id").setType(EdmPrimitiveTypeKind.String.getFullQualifiedName())
)
);
}
return null;
}
{code}
As you can see this `Resource` type has a single `Id` property and the other
ones are _dynamic_ properties.
I've launched this request to my server:
> http://localhost:8080/olingo/odata/Resources?$apply=groupby((propertyX,Id))
So, I'm grouping resources by a _dynamic_ property `propertyX`. I'm getting
this message:
{code:javascript}
{
"error": {
"code": null,
"message": "The property '', used in a query expression, is not defined
in type 'propertyX'."
}
}
{code}
Metadata (http://localhost:8080/olingo/odata/$metadata)
{code:xml}
<?xml version='1.0' encoding='UTF-8'?>
<edmx:Edmx Version="4.0" xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx">
<edmx:DataServices>
<Schema xmlns="http://docs.oasis-open.org/odata/ns/edm"
Namespace="swiller.odata.sample">
<EntityType Name="Resource">
<Key>
<PropertyRef Name="Id"/>
</Key>
<Property Name="Id" Type="Edm.String"/>
<Property Name="TimeStamp" Type="Edm.Date"/>
<Property Name="ModifiedTimeStamp" Type="Edm.Date"/>
<Property Name="Price" Type="Edm.Decimal" Scale="2"/>
</EntityType>
<EntityContainer Name="Container">
<EntitySet Name="Resources"
EntityType="swiller.odata.sample.Resource"/>
</EntityContainer>
</Schema>
</edmx:DataServices>
</edmx:Edmx>
{code}
Despite of I've set the `Resource` entity type is an open type, this is not
populated on metadata.
Any ideas?
> Open Type is not populated
> --------------------------
>
> Key: OLINGO-1217
> URL: https://issues.apache.org/jira/browse/OLINGO-1217
> Project: Olingo
> Issue Type: Bug
> Components: odata4-server
> Affects Versions: (Java) V4 4.4.0
> Environment: Olingo service running at Wildfly/11
> Reporter: Jordi Cabré
>
> I've modeled a single open entity type like:
> {code:java}
> public CsdlEntityType getEntityType(final FullQualifiedName entityTypeName)
> throws ODataException
> {
> if (ET_RESOURCE.equals(entityTypeName)) {
> return new CsdlEntityType()
> .setName(ET_RESOURCE.getName())
> .setKey(Arrays.asList(new CsdlPropertyRef().setName("Id")))
> .setOpenType(true)
> .setProperties(
> Arrays.asList(
> new
> CsdlProperty().setName("Id").setType(EdmPrimitiveTypeKind.String.getFullQualifiedName())
> )
> );
> }
> return null;
> }
> {code}
> As you can see this *Resource* type has a single *Id* property and the other
> ones are _dynamic_ properties.
> I've launched this request to my server:
> {noformat}
> http://localhost:8080/olingo/odata/Resources?$apply=groupby((propertyX,Id))
> {noformat}
> So, I'm grouping resources by a _dynamic_ property *propertyX*. I'm getting
> this message:
> {code:javascript}
> {
> "error": {
> "code": null,
> "message": "The property '', used in a query expression, is not
> defined in type 'propertyX'."
> }
> }
> {code}
> Metadata (
> {noformat}
> http://localhost:8080/olingo/odata/$metadata
> {noformat}
> )
> {code:xml}
> <?xml version='1.0' encoding='UTF-8'?>
> <edmx:Edmx Version="4.0"
> xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx">
> <edmx:DataServices>
> <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm"
> Namespace="swiller.odata.sample">
> <EntityType Name="Resource">
> <Key>
> <PropertyRef Name="Id"/>
> </Key>
> <Property Name="Id" Type="Edm.String"/>
> <Property Name="TimeStamp" Type="Edm.Date"/>
> <Property Name="ModifiedTimeStamp" Type="Edm.Date"/>
> <Property Name="Price" Type="Edm.Decimal" Scale="2"/>
> </EntityType>
> <EntityContainer Name="Container">
> <EntitySet Name="Resources"
> EntityType="swiller.odata.sample.Resource"/>
> </EntityContainer>
> </Schema>
> </edmx:DataServices>
> </edmx:Edmx>
> {code}
> Despite of I've set the `Resource` entity type is an open type, this is not
> populated on metadata.
> Any ideas?
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)