sorry was distracted and have not checked the receipient...
 

> -----Original Message-----
> From: Jesse Alexander (KBSA 21) 
> Sent: Thursday, February 02, 2006 8:24 AM
> To: MyFaces Development
> Subject: RE: Any way to disable/sidestep 
> converters/validators while processing a ActionListener event?
> 
>       Hello:
>        
>       We would like to be able to handle the ActionListener event
> without converters
>       and validators (associated with fields on the form) generating
> error messages.
>       When the form is submitted, we do want the field converters and
> validators to 
>       generate appropriate error messages.  Is there a way to
> disable/sidestep 
>       converters and validators while processing an ActionListener
> event?  Further
>       details are provided below.
> 
>       The situation:
>       --------------
>       1. Have a date input field
>       2. Have a link next to the input field that is used to set a
> default value in the date field.
>          An ActionListener is associated with the link.
>       3. When the link is clicked, the form is posted and the
> ActionListener method is invoked.  This 
>          method sets and default value in the date field and returns.
>       4. Since it is an ActionListener event, JSP redisplays the same
> page.
> 
> A well known usecase...
> 
>       
>       Problem:
>       --------
>       1. If an illegal date format has been entered into the date
> field before clicking the link,
>          the converter on the date field detects an error.  JSF
> redisplays the page with the
>          error message. 
>       2. Even if the date field is empty or has a legal value, other
> fields on the form can have
>          bad values such that their converter or validator will detect
> an error.  Again, JSP 
>          redisplays the page with the error message. 
> 
>       
>       UI Goal:  Have the link set the default value and ignore any
> illegal fields on the form.
>       -------   At this point in time, the user in interested in
> defaulting the date field, not
>                 validating fields.  The fields will be validated when
> the form is submitted. 
> 
>       
>       Current Solution:
>       -----------------
>       1. The link has: immediate="true" set.
>       2. ActionListener associated with link runs early in the JSF
> lifecycle. This method
>          accesses the component and sets the date value by calling
> <component>.setSubmittedValue() 
>       3  ActionListener method then terminates JSF lifecyle
>       4. JSF redisplays page.  Since the date component's submitted
> value has been modified, the
>          default value now appears in the date field.
> 
> What we found is that some fields would not show the values 
> the user had
> entered before...
> 
>       
>       Why We are Looking for a Better Solution:
>       -----------------------------------------
>       We have other situations where the ActionListener method needs
> access to several fields
>       on the form. These fields are currently not available to the
> ActionListener since it is 
>       invoked early in the JSF lifecycle.
> 
>       If the converters/validators could be disabled, the
> ActionListener method could run
>       at the normal place in the JSF lifecycle.  It is understood that
> JSF could not do the data
>       binding for any fields where the converter fails.  But all other
> fields would be properly 
>       bound and accessible to the AtionListener method.
> 
> You might have a look at the OptionalValidators described here:
> <http://wiki.apache.org/myfaces/OptionalValidationFramework>
> 
> Comments, testcases and problem-reports are welcome.
> 
> regards
> Alexander
>        
>        
>       Thanks for your time.
>        
>       Jay
> 
> 

Reply via email to