Hi,
custom lifecycles are possible in jsf1.1, tobago has a custom
lifecycle which integrates the ajax (ppr) into the normal jsf
lifcycle. in case of ajax the process* methods are only run on the
partially requested components.
Regards,
Volker
2008/3/27, Ernst Fastl <[EMAIL PROTECTED]>:
> This seems to be addressing the more general JSF Problem "immediate is
> not enough"
> which the subForm tries to solve. I personally would dream of instead
> of just required=true|false
> requiredFor="buttonId1,buttonId2,..." but that might just be an IDEA
> for JSF 2.0.
>
> The reason PPR uses a PhaseListener is that it was started and should
> still work in JSF 1.1.
> As far as I remember there were no custom lifecycles in 1.1.
>
> The PhaseListener currently only kicks in before Render Response which
> would be to late
> for a feature like that.
>
> I think the approach with updateComponentIds="" could be implemented in the
> PhaseListener as well if it also checks
> after processDecodes for some sort of "partialUpdate" parameter and
> then manually
> invokes validation and conversion on the targeted components - and afterwards
> just does, what it now does before render response
>
> just my 2 cents
>
>
> Ernst
>
>
> On Thu, Mar 27, 2008 at 8:08 PM, Thomas Spiegl <[EMAIL PROTECTED]> wrote:
> > ok, now I got it - nice approach +1
> >
> >
> >
>
> > On Thu, Mar 27, 2008 at 2:54 PM, Mari Ivankovits <[EMAIL PROTECTED]> wrote:
> > > Hi!
> > >
> > > > The pprSubmit is something like a generic autoSubmit feature for
> > > > command components (see also autoSubmit attribute in trinidad).
> > > >
> > > ? pprSubmit does nothing else than rendering the javascript to hook on
> > > the new components too, no?
> > > I do not understand what you mean with autoSubmit here.
> > >
> > >
> > > > Adding this feature to pprSubmit would somehow break the existing ppr
> > > > behavior, where the triggered components register themselves for
> > > > updates.
> > > >
> > > I do not change the existing ppr behavior, just how the data sent by it
> > > will be processed on the server. If this will break the ppr philosophy
> > > then I think the ppr is broken at all, isn't it?
> > >
> > > Just to be sure everyone understand what I would like to have.
> > > The interesting part of this view is:
> > > * a single form
> > > * a required customer name
> > > * a country/zip pair which needs to be available in the model during
> ppr
> > > * a city which will be computed out of the country/zip data during ppr
> > >
> > > The problem is, that due to the required customer the ppr will not work
> > > due to the validation error which will happen.
> > >
> > > <h:form>
> > > <s:pprPanelGroup partialTrigger="lookupCity">
> > > <t:panelGrid columns="2">
> > > <h:outputText value="Customer Name" />
> > > <h:inputText id="name" value="#{bean.name}" required="true"
> />
> > >
> > > <h:outputText value="Country" />
> > > <h:selectOneMenu id="country" value="#{bean.country}" />
> > >
> > > <h:outputText value="Zip" />
> > > <h:inputText id="zip" value="#{bean.zip}" required="true">
> > > <s:submitOnEvent event="change" for="lookupCity" />
> > > </h:inputText>
> > >
> > > <h:outputText value="City" />
> > > <h:panelGroup>
> > > <h:outputText id="cityAuto" value="#{bean.cityAuto}"
> > > renderer="#{bean.cityAuto}"/>
> > > <h:commandButton action="#{bean.overrideCity}"
> > > renderer="#{bean.cityAuto}"/>
> > > <h:inputText id="cityMan" value="#{bean.cityMan}"
> > > renderer="#{!bean.cityAuto}" required="true" />
> > > <h:commandButton action="#{bean.resetCityToAutomatic}"
> > > renderer="#{!bean.cityAuto}"/>
> > > </h:panelGroup>
> > >
> > > </t:panelGrid>
> > >
> > > </s:pprPanelGroup>
> > >
> > > <h:commandButton id="lookupCity" action="#{bean.lookupCity}"
> style="hidden">
> > > <s:pprSubmit processComponentIds="country,zip" />
> > > </h:commandButton>
> > >
> > > <h:commandButton action="#{bean.save}" />
> > > </h:form>
> > >
> > > The complicated thing is, that the pprSubmit enhancement would require
> a
> > > custom LifeCycle for PPR requests (why is it a PhaseListener by now?)
> > >
> > >
> > > Another possibility to fix that would be to enhance subForm to nicely
> > > work in a nested mode so that you can have a subForm with multiple
> > > subForms within and a logical name (new attribute) to group the
> subForms
> > > together.
> > > Then ppr as it is today might work then, the resulting view wouldn't
> > > look nice though.
> > >
> > > Or, using RichFaces with its ajax implementation which might allow this
> > > already ... adding this library for just one function seems weird to me
> > > though :-(
> > >
> > > Ciao,
> > > Mario
> > >
> > >
> >
> >
> >
> > --
> >
> >
> > http://www.irian.at
> >
> > Your JSF powerhouse -
> > JSF Consulting, Development and
> > Courses in English and German
> >
> > Professional Support for Apache MyFaces
> >
>
--
inexso - information exchange solutions GmbH
Bismarckstraße 13 | 26122 Oldenburg
Tel.: +49 441 4082 356 |
FAX: +49 441 4082 355 | www.inexso.de