Balázs Palcsó created TAP5-2158:
-----------------------------------
Summary: Client-side validation of @Size is not working when only
min or max is set
Key: TAP5-2158
URL: https://issues.apache.org/jira/browse/TAP5-2158
Project: Tapestry 5
Issue Type: Bug
Components: tapestry-beanvalidator
Affects Versions: 5.4
Reporter: Balázs Palcsó
Priority: Minor
Server side example:
{code}
@Size(min = 3)
private String name;
{code}
On the client side the following function gets executed:
{code}
doRangeValidate = function(element, value, memo) {
var max, min;
min = rangeValue(element, "data-range-min", 0);
max = rangeValue(element, "data-range-max", Number.MAX_VALUE);
if (_.isString(value)) {
value = value.length;
}
if (!((min <= value && value <= max))) {
memo.error = (element.attribute("data-range-message")) || "RANGE ERROR";
return false;
}
return true;
};
{code}
In the above example max is evaluated to NaN and therefore the function returns
false causing validation error.
Same applies when you only max is specified in @Size annotation and min is
evaluated to NaN.
h3. Workaround
Specify both min and max.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira