[ 
https://issues.apache.org/jira/browse/OLINGO-1568?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

mibo closed OLINGO-1568.
------------------------

> Error serializing BigDecimal when passed certain BigDecimal values
> ------------------------------------------------------------------
>
>                 Key: OLINGO-1568
>                 URL: https://issues.apache.org/jira/browse/OLINGO-1568
>             Project: Olingo
>          Issue Type: Bug
>          Components: odata4-client
>    Affects Versions: (Java) V4 4.8.0, (Java) V4 4.9.0
>            Reporter: Victor Hu
>            Assignee: mibo
>            Priority: Major
>             Fix For: (Java) V4 4.10.0
>
>         Attachments: 
> 0001-OLINGO-1568-Add-handling-of-special-case-precision-s.patch
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> This is a refiling OLINGO-1549 except categorized as a bug.
> This bug was introduced with the change made in OLINGO-1480 to allow for 
> larger precision/scale values when passed in as a BigDecimal as they can 
> exceed the default precision of 40 and scale of 25.
> However, this broke insertions for values ranging from ]0.0, 0.1[ as their 
> BigDecimal representations have precision less than scale (which is not 
> allowed according to the [OData 
> CSDL|http://docs.oasis-open.org/odata/odata-csdl-json/v4.01/odata-csdl-json-v4.01.html#sec_Scale]).
> This also breaks insertions for BigDecimal values that do not specify 
> precision - an arbitrary precision in BigDecimal is represented as 0 versus 
> the arbitrary precision representation of null in OData.
> The following throws an exception due to this bug
> {code:java}
> new ClientObjectFactoryImpl().newPrimitiveValueBuilder().buildDecimal(new 
> BigDecimal("0.04")).toString();
> {code}
> {noformat}
> java.lang.IllegalArgumentException: 
> org.apache.olingo.commons.api.edm.EdmPrimitiveTypeException: The value '0.04' 
> does not match the facets' constraints.{noformat}
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to