Converter getAsString isn't called in af:selectBooleanCheckBox
--------------------------------------------------------------

         Key: ADFFACES-38
         URL: http://issues.apache.org/jira/browse/ADFFACES-38
     Project: MyFaces ADF-Faces
        Type: Bug

    Reporter: Arnaud MERGEY
    Priority: Critical


I use in a page this tag:

<af:selectBooleanCheckbox label="test boolean"
                       value="#{test.boolean}"
                       converter="#{test.booleanConverter}"/>

I have a String representation of boolean in my bean (getBoolean return "0" if 
false end "1" if true)
My converter convert in getAsString "0" into "false" and "1" into "true" and 
vice versa (getAsObject).

Checkbox is never checked when getBoolean return "1", so I have debugged my 
application 
in converter:
* getAsString is never called.
* getAsObject is called normally when my form is submitted String param in 
getAsObject is "false" if my checkbox isn't checked and "true" if my checkbox 
is checked.

selectBooleanCheckbox  working isn't "symetric" so I think it is a trinidad bug.

I have checked source code in 
SimpleSelectBooleanRenderer.encodeAllAsElement
and SimpleSelectBooleanRenderer.encodeAllAsNonElement

I have replaced code

Object value = getSubmittedValue(bean);
    if ( value == null)
      value = getValue(bean);

by this one
Object value = getSubmittedValue(bean);
    if ( value == null)
    {    
      value = getValue(bean);
    }
    if(!(value instanceof Boolean))
    {
         value=Boolean.valueOf(getConvertedString(context, component, bean));
    }

this "patch" works  in af:selectBooleanCheckbox value can be boolean or String 
"true " or "false" and converter can be used to convert custom boolean 
representation, but I don't know if it is right place to correct this trinidad 
bug



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to