You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@myfaces.apache.org by Jana Parvanova <ja...@sirma.bg> on 2006/07/03 09:51:39 UTC
Re: Understanding phases and UIInput inside of UIData
Hi!
I don't know whether this would help u, but this is what i do:
- Set immediate=true for both inputs in table and action
- When action executes, call first table.processUpdates, where table is the
UIData bound to table. This would copy submitted values into model.
Hope this helps.
----- Original Message -----
From: "Andrew Robinson" <an...@gmail.com>
To: "MyFaces Discussion" <us...@myfaces.apache.org>
Sent: Friday, June 30, 2006 6:40 PM
Subject: Understanding phases and UIInput inside of UIData
>I had thought I had my problem of phases with UIData figured out, but I am
> still having issues.
> I have a data table with input controls in it (inputText for example).
> Sometimes I lose data in these controls. Here are the use cases and the
> associated issue:
>
> 1. If action immediate set to true, I lose all my data in the data
> tables
> 2. If immediate is false my action never fires if a validation error
> occurs (this is not what I want in this use case, I want my action to
> ALWAYS
> fire)
> 3. If I change the phase ID of the action to the validations phase,
> and there are validation errors, everything works
> 4. If I chagne the phase ID of the action to the validations phase and
> there are no validation errors, I lose my data in the table
>
> What I am trying to figure out is the difference between #3 and #4.
>
> So, I have changed my action to execute during the processing of
> validations. This allows me to run my code regardless of validation
> errors.
> The side effect is if there are no validation errors, I still lose my
> data.
>
> Why would all my submitted values re-render in the data table when there
> are
> validation errors, but not when there are not (I am skipping update model,
> so in either case it never fires)?
>
> I can't see any difference in the code except that with validation errors
> there is at least one UI component marked as not being valid, but that
> doesn't seem like it should cause a behavior change with all components on
> the whole page. If it does how does that work (I couldn't see any such
> behavior in the code)?
>
> I really need to get this sorted out, so if someone could shed some light
> on
> how UIData manages to have its child components render submitted values or
> not I'd really appreciate it.
>
> Thanks,
> Andrew
>
Re: Understanding phases and UIInput inside of UIData
Posted by Andrew Robinson <an...@gmail.com>.
Thanks for the feedback. I got it working with adding a dummy error
message. However, I will keep this information handy.
thanks
On 7/3/06, Jana Parvanova <ja...@sirma.bg> wrote:
>
> Hi!
>
> I don't know whether this would help u, but this is what i do:
>
> - Set immediate=true for both inputs in table and action
> - When action executes, call first table.processUpdates, where table is the
> UIData bound to table. This would copy submitted values into model.
>
> Hope this helps.
>
> ----- Original Message -----
> From: "Andrew Robinson" <an...@gmail.com>
> To: "MyFaces Discussion" <us...@myfaces.apache.org>
> Sent: Friday, June 30, 2006 6:40 PM
> Subject: Understanding phases and UIInput inside of UIData
>
>
> >I had thought I had my problem of phases with UIData figured out, but I am
> > still having issues.
> > I have a data table with input controls in it (inputText for example).
> > Sometimes I lose data in these controls. Here are the use cases and the
> > associated issue:
> >
> > 1. If action immediate set to true, I lose all my data in the data
> > tables
> > 2. If immediate is false my action never fires if a validation error
> > occurs (this is not what I want in this use case, I want my action to
> > ALWAYS
> > fire)
> > 3. If I change the phase ID of the action to the validations phase,
> > and there are validation errors, everything works
> > 4. If I chagne the phase ID of the action to the validations phase and
> > there are no validation errors, I lose my data in the table
> >
> > What I am trying to figure out is the difference between #3 and #4.
> >
> > So, I have changed my action to execute during the processing of
> > validations. This allows me to run my code regardless of validation
> > errors.
> > The side effect is if there are no validation errors, I still lose my
> > data.
> >
> > Why would all my submitted values re-render in the data table when there
> > are
> > validation errors, but not when there are not (I am skipping update model,
> > so in either case it never fires)?
> >
> > I can't see any difference in the code except that with validation errors
> > there is at least one UI component marked as not being valid, but that
> > doesn't seem like it should cause a behavior change with all components on
> > the whole page. If it does how does that work (I couldn't see any such
> > behavior in the code)?
> >
> > I really need to get this sorted out, so if someone could shed some light
> > on
> > how UIData manages to have its child components render submitted values or
> > not I'd really appreciate it.
> >
> > Thanks,
> > Andrew
> >
>
>