[
http://issues.apache.org/jira/browse/VALIDATOR-207?page=comments#action_12451948
]
Niall Pemberton commented on VALIDATOR-207:
-------------------------------------------
You make a good point and I can't actually remember if this was an unintended
consequence of the refactoring I did to use a common function
(jcv_isFieldPresent) or not. Whatever the case though, you're right that the
change isn't consistent with previous validator versions or what the docs
indicate - my apologies for that.
Having said that I still think that disabled fields not being submitted to the
server means that validation passes for fields marked as "required" that are
missing - which seems incorrect to me. Also its a catch 22 situation in terms
of compatibility - reverting the change will break consistency with Validator
1.3.0 and anyone now relying on the new behaviour.
Seeing your description of how you were using this behaviour also makes me
think theres an alternative solution for your use-case which models more
accurately what you're trying to achieve and doesn't rely on what IMO was
broken validator behaviour. Since Validator 1.2.0 you can "inherit" validation
rules - which means you could define you're update form rules and then inherit
(re-use) them for you're create form, something like this:
<form name="updateUser">
<field property="name" depends="required">
...
</field>
</form>
<form name="createUser" extends="updateUser">
<field property="password" depends="required,minLength">
...
</field>
</form>
See http://wiki.apache.org/jakarta-commons/ValidatorVersion120
I guess if this doesn't satisfy your need then perhaps an alternative solution
would be to keep the current Validator 1.3.0 behaviour, but provide a way to
configure the required script validator to ignore disabled fields. I haven't
thought much about this - but my initial thought is to introduce a new
"ignoreDisabled" parameter/variable that the required validator checks -
alternative suggestions welcome though.
> Disabled fields should not be checked by the validateRequired function.
> Relevant to adding the check for field disabled in jcv_isFieldPresent.
> -----------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: VALIDATOR-207
> URL: http://issues.apache.org/jira/browse/VALIDATOR-207
> Project: Commons Validator
> Issue Type: Bug
> Components: JavaScript
> Affects Versions: 1.3.0 Release
> Reporter: Joseph Breuer
>
> For validateRequired the following condition checks to see if the field is
> present. It then sets the validity to false.
> if (!jcv_isFieldPresent(field)) {
> fields[i++] = oRequired[x][1];
> isValid=false;
> }
> Supposedly validateRequired as well as all of the validate methods are not
> supposed to validate fields that are set as disabled. This method seems to
> categorize disabled fields with those that are null or are undefined.
> validateRequired should differentiate between the disabled fields and the not
> present fields.
--
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
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]