[jsr-314-open-mirror] [jsr-314-open] status of <composite:clientBehavior> (was Re: "for" attribute for <f:ajax>)

Roger Kitain roger.kitain at oracle.com
Mon May 3 14:34:36 EDT 2010


I think this was an oversight since this was one of the last remaining 
spec areas that went in.
I will file a spec issue on this.
Thanks for catching it.

-roger

On 5/3/10 2:31 PM, David Geary wrote:
> There is a <composite:clientBehavior> tag in the 2.0 version of JSF 
> that comes with GlassFish, and it appears to work as advertised by 
> Alexandr and Andy below.
>
> But, as Alexandr points out, it’s not documented in the PDL docs, nor 
> could I find any mention of it in the spec (or Ed’s book, either).
>
> This is a vital tag that lets page authors attach ajax functionality 
> to components within composite components. I see no reason why it 
> should not be documented.
>
> Does anyone know why this tag was not documented in the first place, 
> or what the plans are for its future? Anyone know if it works with 
> MyFaces 2.0?
>
> If there’s not a compelling reason for blacklisting it from the docs, 
> can we document it?
>
> Thanks,
>
>
> david
>
>
>
> 2009/5/26 Alexandr Smirnov <asmirnov at exadel.com 
> <mailto:asmirnov at exadel.com>>
>
>     Sure, the composite client event tags are not included in the PDL doc.
>     There is one <composite:clientBehavior> tag with attributes: 'name' -
>     the virtual event name that composite component has.
>     'default' "true/false" defines the default event that is enclosed
>     <f:ajax> tag serves if 'event' attribute was omited.
>     'event' - the real event name for target component.
>     'targets' - space-delimited list of component id's for which composite
>     component behavior or <f:ajax> tag will be redirected.
>
>     The model with 'for' attribute was the first implementation but it was
>     replaced wit 'virtual' event model.
>
>     Andy Schwartz wrote:
>     > David -
>     >
>     > David Geary wrote On 5/24/2009 5:55 PM ET:
>     >> For JSF 2, we added a "for" attribute to f:actionListener,
>     >> f:converter, etc., but we don't have a "for" attribute for
>     <f:ajax>.
>     >> AFAICT, that means that although you can attach listeners,
>     validators,
>     >> converters, etc. to a component contained in a composite component,
>     >> you cannot attach Ajax functionality.
>     >>
>     >> Why is that? Is it an oversight, or is there some compelling
>     technical
>     >> reason to disallow adding Ajax behavior to components contained in
>     >> composites?
>     >
>     > We definitely intended to support this, though instead of exposing a
>     > "for" attribute on <f:ajax>, we wanted to leverage the fact that
>     > behaviors already have a targeting mechanism in the "event"
>     name.  The
>     > idea was that a composite component would, like any other
>     > ClientBehaviorHolder, expose a set of logical event names that
>     behaviors
>     > can be attached to.  So, for example, assuming a composite component
>     > included "OK" and "Cancel" buttons and wanted to allow the user to
>     > attach action behaviors to these, the composite component might
>     surface
>     > "okAction" and "cancelAction" event names, allowing the page
>     author to do:
>     >
>     > <foo:someComposite>
>     > <f:ajax event="okAction"/>
>     > <f:ajax event="cancelAction"/>
>     > </foo:someComposite>
>     >
>     > I know that Alexander did the implementation work to get this up and
>     > running.  However, I do not see any pdldoc for the composite tag
>     that
>     > the composite component author uses to specify the supported client
>     > behavior event names (composite:clientBehavior I believe).
>     >
>     > Alex, Roger -
>     >
>     > Did this make it into 2.0?
>     >
>     > Andy
>     >
>     >>
>     >> Thanks,
>     >>
>     >>
>     >> david
>
>


-- 
roger.kitain at oracle.com
https://twitter.com/rogerk09
http://www.java.net/blogs/rogerk


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jsr-314-open-mirror/attachments/20100503/93fb3b38/attachment-0002.html 


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