i have implemented a workaround for this serverside required problem... shortly: if validatorscript sets the required attribute, as you say, JSF won't call my serverside validator when that field's value is empty... to overcome this, i've commented the validatorscript's required attribute setting code.. this means JSF can't see that field as required and not call any required validator for that field... So, how can we call serverside required validators? I've implemented an idea<http://wiki.apache.org/myfaces/OptionalValidationFramework>from myfaces wiki..
Implementation in short; i have developed an RequiredValidatorChecker component.. it traverses all the component tree and calls validate methods for found required validators... i have entered a blog<http://www.jroller.com/page/hasant?entry=jsf_bypassable_client_and_server>about this solution... So, you can think that serverside required validations are being called when needed... In fact, the problem is ConverterHelper can not handle array/list types in current situation... although i can't think of any such scenario, somehow a validation may be necessary to validate an array/list value.. so, how should it work in this case? (May be such a scenario is not possible ;) ) Hasan... On 3/16/07, Gary VanMatre <[EMAIL PROTECTED]> wrote:
The server-side "required" commons validator rule is kind of bogus. I've only seen it useful for client side validation. This is because JSF requires a value before it will even invoke the server side validation logic. A component's validator will not be invoked if the component doesn't have a value. There is a separate "required" attribute for components that are EditableValueHolders. The shale ValidatorScript component, that must be added at the end of the page, looks through the component tree and toggles on the required attribute for components that include the shale commons validator required server side rule. So, the ValidatorScript component is needed even if you are only using sever side rules. Gary
