Composite Components
Tag actionSource


Declares that the composite component whose contract is declared by the <composite:interface> in which this element is nested exposes an implementation of ActionSource2 suitable for use as the target of attached objects in the using page. Any attached objects suitable for implementations of ActionSource2 may be attached to the composite component. Consider this excerpt from the using page:

  1. <ez:loginPanel id="loginPanel" model="#{bean}">
  2.   <f:valueChangeListener for="username"
  3.                              binding="#{bean.useridValueChangeListener}" />
  4.   <f:actionListener for="loginEvent"
  5.                     binding="#{bean.loginEventListener}" />
  6.  
  7.   <f:actionListener for="cancelEvent"
  8.                     binding="#{bean.cancelEventListener}" />
  9.  
  10.   <f:actionListener for="allEvents"
  11.                     binding="#{bean.allEventsListener}" />
  12.  
  13. </ez:loginPanel>

The <f:actionListener> elements on lines 4, 7, and 10 refer to the attached objects declared on lines 2, 3 and 4 below.

  1. <composite:interface name="loginPanel">
  2.   <composite:actionSource name="loginEvent" />
  3.   <composite:actionSource name="cancelEvent" />
  4.   <composite:actionSource name="allEvents" targets="loginEvent cancelEvent" />
  5. </composite:interface>

Most of the concepts from example content from <composite:valueHolder> also applies in the case of <composite:actionSource>.

Please see <composite:interface> for a usage example.



Tag Information
Tag ClassNone
TagExtraInfo ClassNone
Body ContentJSP
Display NameNone

Attributes
NameRequiredRequest-timeTypeDescription
nametruefalsejavax.el.ValueExpression
(must evaluate to java.lang.String)

The value of this attribute maps back to the "for" attribute on an attachable object nested within a composite component. If the "targets" attribute is not specified, this value also represents the component ID of the target component within the that the <composite:implementation> ActionListener should be mapped to.

targetsfalsefalsejavax.el.ValueExpression
(must evaluate to java.lang.String)

If present, this must be a space (not tab) separated list of client ids (relative to the top level component) of components within the <composite:implementation> section. Space is used as the delimiter for compatibility with the IDREFS and NMTOKENS data types from the XML Schema.

hiddenfalsefalsejavax.el.ValueExpression
(must evaluate to boolean)

The "hidden" flag is used to identify features that are intended only for tool use, and which should not be exposed to humans.


Variables
No Variables Defined.