[ 
https://issues.apache.org/jira/browse/TRINIDAD-1124?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12606900#action_12606900
 ] 

Ed Burns commented on TRINIDAD-1124:
------------------------------------

Hello Matthias,  

I made the change you suggested to my NumberConverter, but I cannot reproduce 
the error you're describing.  

Here is my testcase:

        Converter converter = application.createConverter("javax.faces.Number");

        String stringToConvert = "333.111";
        Object obj = converter.getAsObject(getFacesContext(), text,
                                           stringToConvert);
        assertTrue(obj instanceof java.lang.Number);
        String str = converter.getAsString(getFacesContext(), text, obj);
        assertTrue(str.equals(stringToConvert));

The obj I get back is now a BigDecimal, after making your change, however, its 
value is still 333.111, not 333.1109999999999899955582804977893829345703125 .

How can I reproduce this?

> numberconverter has issue with bigdecimal
> -----------------------------------------
>
>                 Key: TRINIDAD-1124
>                 URL: https://issues.apache.org/jira/browse/TRINIDAD-1124
>             Project: MyFaces Trinidad
>          Issue Type: Bug
>            Reporter: Matthias Weßendorf
>            Assignee: Matthias Weßendorf
>             Fix For: 1.0.9-core, 1.2.9-core
>
>
> Due to a potential bug in BigDecimal there is a bug, when you use BigDecimal
> with a NumberConverter.
> Like
> <tr:inputText value="#{bean.number}" ...>
>   <tr:convertNumber />
> </tr:inputText>
> For instance, when the entered value is "333.111" the actual stored value is 
> 333.1109999999999899955582804977893829345703125
> There is a mathematic explanation for that in here:
> http://en.wikipedia.org/wiki/Floating_point#Accuracy_problems

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to