[ http://issues.apache.org/jira/browse/MYFACES-187?page=comments#action_66242 ] Martin Marinschek commented on MYFACES-187: -------------------------------------------
All clear - the description was a little unclear at first ;), but now I see the problem. I will look at it! regards, Martin > 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 > Assignee: Martin Marinschek > Fix For: Nightly Build > > '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 - For more information on JIRA, see: http://www.atlassian.com/software/jira
