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

Leonardo Uribe lu4242 at gmail.com
Mon May 3 15:18:55 EDT 2010


Hi

Just one comment: on 07-08-2009 I sent a mail to
jsr-314-comments at jcp.orgwith subject:

Composite  components not available on plddocs

that says this:

*Checking some documentation about composite component feature, and after a
previous comment about BehaviorAttachedObjectHandler / Target, it is clear
that not all components are on plddocs. On the spec javadoc
(jsf-spec-2.0-20090626) mention this ones:

//Tags for handle specification of the component
composite:interface
composite:attribute
composite:implementation
composite:extension

//Tags for handle children and facets
composite:insertChildren
composite:facet
composite:insertFacet
composite:renderFacet

//Tags for AttachedObjectHandler / Target instances
composite:actionSource
composite:editableValueHolder
composite:valueHolder

Doing a fast check for CompositeLibrary file, this tags are registered, but
there are not present on plddocs:

composite:deferred-value
composite:deferred-method
composite:method-signature
composite:clientBehavior    //This is the one handling
BehaviorAttachedObjectHandler

Thanks for read this and my previous comments.
*
Anyway, I hope some day this will be solved ;-). The next time I'll open
issues on spec issue tracker. It seems the best way to be listen.

regards,

Leonardo Uribe

2010/5/3 Leonardo Uribe <lu4242 at gmail.com>

> Hi
>
> In myfaces we don't have <composite:clientBehavior> tag. The reason is that
> we don't know which attributes this tag has, how it looks like or where
> there is some example. In theory it works like <composite:actionSource>,
> <composite:valueHolder>, <composite:editableValueHolder>. I pointed this
> issue multiple times (really a lot of times but it seems nobody took that
> seriously). Just take a look at:
>
> http://markmail.org/message/dxlpoa3qgul7uuns?q=composite:clientBehavior
>
> As soon as any documentation is available on mojarra javadoc I'll do the
> necessary stuff on myfaces.
>
> regards,
>
> Leonardo Uribe
>
> 2010/5/3 David Geary <clarity.training at gmail.com>
>
> Thanks, Roger!
>>
>>
>> david
>>
>> 2010/5/3 Roger Kitain <roger.kitain at oracle.com>
>>
>>  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>
>>>
>>> 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.comhttps://twitter.com/rogerk09http://www.java.net/blogs/rogerk
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jsr-314-open-mirror/attachments/20100503/4a992e86/attachment-0002.html 


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