Uploaded image for project: 'MyFaces Trinidad'
  1. MyFaces Trinidad
  2. TRINIDAD-1489

get a valueChangeEvent for bigDecimal even though user didn't make a change.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.2.12-core
    • None
    • None

    Description

      When attribute data type is BigDecimal and <af:convertNumber> is used Trin treats the attribute as if the attribute value is changed even though the attribute value has not been changed.

      Under the covers the numberConverter is using the java decimalFormat class, and things can get a little funny when you use bigdecimal, because bigdecimal remembers formatting information like scale. So 2.0 is not equal to 2.00 in bigdecimal.

      We can add logic to UIXEditableValueHolder that if .equals fails and if the values are the same type and implement comparable we should then check compareTo.

      There are 2 workarounds for now.

      1] apply the pattern to the bigdecimal in the getter, so in the salary
      example code above return newSal instead of sal.

      2] check compareTo in the setter, and don't set if you get 0.

      Attachments

        Activity

          People

            Unassigned Unassigned
            gabrielle Gabrielle Crawford
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: