I got it to work with a custom component. I created a component that
doesn't render, that simply houses children. In the queueEvent method
of that component, if the type of the event is ActionEvent, I then use
it to add components as partial targets.

It just would be nice to have this supported by Trinidad out of the
box. A4J creates AjaxEvents that have their phase ID set to ANY, so
they fire almost immediately, and thus work regardless of what phases
are run.

I'm just wondering if there would be any harm to moving the code from
the broadcast method to the queue method.

On 8/28/07, Simon Lessard <[EMAIL PROTECTED]> wrote:
> Hello Andrew,
>
> To my knowledge, this is the desired behavior since PPR requests does not
> use a different lifecycle than a normal requests. However, since I had to
> deal with that with every single ADF Faces/Trinidad projects I was on, I
> made a new lifecycle that alter the behavior with PPR request by skipping
> required check validations and running validation and update model phases
> only on the PPR source then I restore the model value after the render to
> make sure the model does not stay polluted. Finally, I have to save all
> values that were pushed from PPR that way so that in further PPR requests
> (in case there's more than one PPR active element in the page), I push the
> value back to the model from the previous PPR requests. This last part is
> the source of most of the complexity but is required when populating a
> selectOneMenu's list of values from the value of two other fields for
> example.
>
>
> Regards,
>
> ~ Simon
>
>
> On 8/27/07, Andrew Robinson <[EMAIL PROTECTED]> wrote:
> > I have a login form with a login command link. The form is a
> > panelFormLayout with panelLabelAndMessage components with inputText
> > components (username and password).
> >
> > I have:
> > <tr:panelFormLayout partialTriggers="login">
> > ...
> >   <f:facet name="footer">
> >     <tr:group>
> >       <tr:commandLink
> >         id="login"
> >         partialSubmit="true"
> >         action="#{identity.login}"
> >         text="#{messages.page_login_login}" />
> > ...
> >
> > Now the panel is not updated because the code to trigger the PPR is in
> > the broadcast method of the UIXCommand (parent of the command link).
> > The validation error causes the ActionEvent to not be broadcast, and
> > thus the PPR is not properly triggered.
> >
> > Should this be considered a bug?
> >
> > Should the "adfContext.partialUpdateNotify(component);" call be made
> > from the queueEvent method rather than the broadcast method?
> >
> > Or is there a different way to do this that I am missing?
> >
> > Another nice feature would be to automatically have the
> > panelLabelAndMessage and panelFormLayout components automatically get
> > re-rendered if there is a validation or conversion error in one of
> > their nested children components.
> >
> > Thanks,
> > Andrew
> >
>
>

Reply via email to