[
https://issues.apache.org/jira/browse/OLINGO-1214?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Artem Böhme updated OLINGO-1214:
--------------------------------
Description:
Hi,
given complex type B with property 'x' which has the facet Nullable=false
and
given the entity A with the reference to complex type B via 'b' and the facet
Nullable=true on 'b'
This combination produces the error "The metadata do not allow a null value."
at
{{EntityProvider.writeEntry(contentType, targetEntitySet, data,
EntityProviderWriteProperties.serviceRoot(getContext().getPathInfo().getServiceRoot()).build());}}
if the data is A and data don't contain the key 'b'.
If i debug into the code, I can see that the problem is the property 'x' which
is not nullable, but in the described situation I don't have the 'b' at all
(which can be nullable).
I think the lines 76 to 95 in
{{org.apache.olingo.odata2.core.ep.producer.JsonPropertyEntityProducer}} should
be reviewed to handle the described case correctly.
Please let me know, if you need more context info!
Best regards,
Artem
was:
Hi,
given complex type B with property 'x' which has the facet Nullable=false
and
given the entity A with the reference to complex type B via 'b' and the facet
Nullable=true on 'b'
This combination produces the error "The metadata do not allow a null value."
at
{{EntityProvider.writeEntry(contentType, targetEntitySet, data,
EntityProviderWriteProperties.serviceRoot(getContext().getPathInfo().getServiceRoot()).build());}}
if the data is A and data don't contain the key 'b'.
If i debug into the code, I can see that the problem is the property 'x' which
is not nullable, but in the described situation I don't have the 'b' at all
(which can be nullable).
I think the lines 76 to 95 in
{{org.apache.olingo.odata2.core.ep.producer.JsonPropertyEntityProducer}} should
be reviewed to handle the described case correctly.
Please let me know, if you need more context info!
Best regards,
Artem
> Nullable Facet is not properly handled on complex types
> -------------------------------------------------------
>
> Key: OLINGO-1214
> URL: https://issues.apache.org/jira/browse/OLINGO-1214
> Project: Olingo
> Issue Type: Bug
> Components: odata2-core
> Affects Versions: V2 2.0.9
> Reporter: Artem Böhme
>
> Hi,
> given complex type B with property 'x' which has the facet Nullable=false
> and
> given the entity A with the reference to complex type B via 'b' and the facet
> Nullable=true on 'b'
> This combination produces the error "The metadata do not allow a null value."
> at
> {{EntityProvider.writeEntry(contentType, targetEntitySet, data,
> EntityProviderWriteProperties.serviceRoot(getContext().getPathInfo().getServiceRoot()).build());}}
> if the data is A and data don't contain the key 'b'.
> If i debug into the code, I can see that the problem is the property 'x'
> which is not nullable, but in the described situation I don't have the 'b' at
> all (which can be nullable).
> I think the lines 76 to 95 in
> {{org.apache.olingo.odata2.core.ep.producer.JsonPropertyEntityProducer}}
> should be reviewed to handle the described case correctly.
> Please let me know, if you need more context info!
> Best regards,
> Artem
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)