[jsr-314-open-mirror] [jsr-314-open] Use a Renderer on a composite component

Martin Marinschek mmarinschek at apache.org
Mon Mar 29 23:35:56 EDT 2010


Hi Leonardo,

> Myfaces already has this behavior implemented. We use a param called
> org.apache.myfaces.CLEAN_TRANSIENT_BUILD_ON_RESTORE, that
> is set from c:forEach, ui:include, c:if or c:choose tag handlers to
> indicate that the current view should be refreshed. This behavior is
> activated throught set org.apache.myfaces.REFRESH_TRANSIENT_BUILD_ON_PSS
> param to "auto". Maybe the "auto" mode should be the default.

perfect, that sounds good. I am cc´ing our dev list cause this is of
course relevant for MyFaces as well.

If that ends up in the API, it should be on FacesContext. If we do it
in MyFaces only, it should be in a MyFacesContext - we should have
something like this anyways. MyFacesContext.getCurrentInstance()
should deliver an instance of it.

best regards,

Martin


>> > best regards,
>> >
>> > Martin
>> >
>> > On Tue, Mar 30, 2010 at 3:53 AM, Leonardo Uribe <lu4242 at gmail.com>
>> > wrote:
>> >>
>> >>
>> >> 2010/3/29 Andy Schwartz <andy.schwartz at oracle.com>
>> >>>
>> >>> On 3/29/10 5:10 PM, Martin Marinschek wrote:
>> >>>>
>> >>>> Hi Leonardo,
>> >>>>
>> >>>>
>> >>>>>
>> >>>>> Ok, if I have a composite component the first thought is use c:if
>> >>>>> tag,
>> >>>>> but
>> >>>>> remember that with
>> >>>>> partial state saving enabled this tag is evaluated when the view is
>> >>>>> build,
>> >>>>> not when it is
>> >>>>> rendered. Other alternative is use a component that allows to render
>> >>>>> one
>> >>>>>
>> >>>>
>> >>>> just to get this straight, cause I seemed to read this (IMHO, wrong
>> >>>> assertion) several times from you already: c:if, c:forEach and
>> >>>> ui:include _should_ be evaluated before rendering again. This is in
>> >>>> Mojarra as of 2.0.3 (Ed, Ryan, correct me if I am wrong) and it
>> >>>> should
>> >>>> be in MyFaces as well, right?
>> >>>>
>> >>>
>> >>> Haven't had a chance to review this entire thread (or any other recent
>> >>> threads - sorry!), but just wanted to jump in to say that, yes, Ryan
>> >>> has
>> >>> implemented an initial fix for this as part of this issue:
>> >>>
>> >>> https://javaserverfaces.dev.java.net/issues/show_bug.cgi?id=1313
>> >>>
>> >>> Would be good to do some additional testing with our various test
>> >>> cases
>> >>> just to make sure that all is well.
>> >>>
>> >>
>> >> Ok, that's great!. That means we need to make myfaces evaluate c:if,
>> >> c:forEach and ui:include as default, not as an option activated by a
>> >> param,
>> >> like in myfaces right now. Thanks for the tip.
>> >>
>> >> regards,
>> >>
>> >> Leonardo Uribe
>> >>
>> >>>
>> >>> Andy
>> >>>
>> >>>> Anyway I support your basic motion: it would generally be good to be
>> >>>> able to exchange the renderer as well.
>> >>>>
>> >>>> best regards,
>> >>>>
>> >>>> Martin
>> >>>>
>> >>>>
>> >>>
>> >>
>> >>
>> >
>> >
>> >
>> > --
>> >
>> > http://www.irian.at
>> >
>> > Your JSF powerhouse -
>> > JSF Consulting, Development and
>> > Courses in English and German
>> >
>> > Professional Support for Apache MyFaces
>> >
>>
>>
>>
>> --
>>
>> http://www.irian.at
>>
>> Your JSF powerhouse -
>> JSF Consulting, Development and
>> Courses in English and German
>>
>> Professional Support for Apache MyFaces
>
>



-- 

http://www.irian.at

Your JSF powerhouse -
JSF Consulting, Development and
Courses in English and German

Professional Support for Apache MyFaces




More information about the jsr-314-open-mirror mailing list