myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Howard Abrams (JIRA)" <myfaces-...@incubator.apache.org>
Subject [jira] Created: (MYFACES-187) UIInput.getValue can return wrong (old) value
Date Wed, 13 Apr 2005 22:01:17 GMT
UIInput.getValue can return wrong (old) value
---------------------------------------------

         Key: MYFACES-187
         URL: http://issues.apache.org/jira/browse/MYFACES-187
     Project: MyFaces
        Type: Bug
    Versions: 1.0.9 beta    
    Reporter: Howard Abrams


'UIInput.getValue' will return the wrong (old) value if called between validation and update
phase when the submitted value is "" and the old value was a non-zero length string.

The offending code is in UIInput.validate:

    if(submittedValue instanceof String && ((String) submittedValue).length()==0)
    {
        submittedValue = null;
    }

The effect of this is that when the client submits "", the submittedValue of null works it's
way down to 'setValue'. This would seem correct, but 'getValue' checks to see if the value
is null, and if it is, it uses the value binding. The end result is that 'getValue' will return
the wrong (old) value if called between validation and update phase becuase the model has
not been updated yet, but the local value has been null'd.

Neither the spec, nor the offical JavaDoc mention this behavior. I belive the code should
be removed. Anyone know why it is there?


-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


Mime
View raw message