org.apache.myfaces.trinidad.webapp

## Class UIXComponentELTag

- java.lang.Object
- - javax.faces.webapp.UIComponentTagBase
  - - javax.faces.webapp.UIComponentClassicTagBase
    - - javax.faces.webapp.UIComponentELTag
      - - org.apache.myfaces.trinidad.webapp.UIXComponentELTag

- All Implemented Interfaces:
    javax.servlet.jsp.tagext.BodyTag, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspIdConsumer, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag

      public abstract class UIXComponentELTag
      extends javax.faces.webapp.UIComponentELTag

  Subclass of UIComponentTag to add convenience methods, and optimize where appropriate.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `protected static class` | `UIXComponentELTag.CheckExecutionResult`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `DOCUMENT_CREATED_KEY` Deprecated. Not used any more in the session state manager

    - ### Fields inherited from class javax.faces.webapp.UIComponentClassicTagBase

      `bodyContent, pageContext, UNIQUE_ID_PREFIX`

    - ### Fields inherited from class javax.faces.webapp.UIComponentTagBase

      `log`

    - ### Fields inherited from interface javax.servlet.jsp.tagext.Tag

      `EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE`

    - ### Fields inherited from interface javax.servlet.jsp.tagext.BodyTag

      `EVAL_BODY_BUFFERED, EVAL_BODY_TAG`

    - ### Fields inherited from interface javax.servlet.jsp.tagext.IterationTag

      `EVAL_BODY_AGAIN`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `UIXComponentELTag()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `UIXComponentELTag.CheckExecutionResult` | `checkChildTagExecution(javax.faces.component.UIComponent childComponent)` Allows a child tag to check if its children should be executed based on the grand-parent.
    `protected UIXComponentELTag.CheckExecutionResult` | `checkChildTagExecution(javax.faces.webapp.UIComponentELTag childTag, String facetName)` Check if a child component tag should execute or not.
    `protected javax.faces.component.UIComponent` | `createComponent(javax.faces.context.FacesContext context, String newId)` When within a component binding context, the component bindings (stored in backing bean) will be cleared so a new component instance can be created.
    `int` | `doEndTag()`
    `int` | `doStartTag()`
    `protected boolean` | `isProcessingStampingComponentTag()` Check if a tag that creates components that stamp their children (tag that creates a component that stamps out its contents, potentially rendering the children multiple times) is currently executing (between doStartTag and doEndTag).
    `protected boolean` | `isStampingTag()` Check if this tag is a stamping tag (tag that creates a component that stamps out its contents, potentially rendering the children multiple times).
    `void` | `release()`
    `void` | `setAttributeChangeListener(javax.el.MethodExpression attributeChangeListener)`
    `void` | `setBinding(javax.el.ValueExpression valueExpression)`
    `protected void` | `setDateProperty(FacesBean bean, PropertyKey key, javax.el.ValueExpression expression)` Set a property of type java.util.Date.
    `protected void` | `setIntArrayProperty(FacesBean bean, PropertyKey key, javax.el.ValueExpression expression)` Set a property of type int[].
    `protected void` | `setMaxDateProperty(FacesBean bean, PropertyKey key, javax.el.ValueExpression expression)` Set a property of type java.util.Date.
    `protected void` | `setNumberProperty(FacesBean bean, PropertyKey key, javax.el.ValueExpression expression)` Set a property of type java.lang.Number.
    `protected void` | `setProperties(FacesBean bean)`
    `protected void` | `setProperties(javax.faces.component.UIComponent component)`
    `protected void` | `setProperty(FacesBean bean, PropertyKey key, javax.el.ValueExpression expression)`
    `protected void` | `setStringArrayProperty(FacesBean bean, PropertyKey key, javax.el.ValueExpression expression)` Set a property of type java.lang.String[].
    `protected void` | `setStringListProperty(FacesBean bean, PropertyKey key, javax.el.ValueExpression expression)` Set a property of type java.util.List<java.lang.String>.
    `protected void` | `setStringSetProperty(FacesBean bean, PropertyKey key, javax.el.ValueExpression expression)` Set a property of type java.util.Set<java.lang.String>.
    `protected void` | `setValidationError(String validationError)` Sets any fatal validation error that could have happened during property setting.

    - ### Methods inherited from class javax.faces.webapp.UIComponentELTag

      `getELContext, hasBinding, setRendered`

    - ### Methods inherited from class javax.faces.webapp.UIComponentClassicTagBase

      `addChild, addFacet, addVerbatimAfterComponent, addVerbatimBeforeComponent, createVerbatimComponent, createVerbatimComponentFromBodyContent, doAfterBody, doInitBody, encodeBegin, encodeChildren, encodeEnd, findComponent, getBodyContent, getComponentInstance, getCreated, getCreatedComponents, getDoAfterBodyValue, getDoEndValue, getDoStartValue, getFacesContext, getFacesJspId, getFacetName, getId, getIndexOfNextChildTag, getJspId, getParent, getParentUIComponentClassicTagBase, getPreviousOut, setBodyContent, setId, setJspId, setPageContext, setParent, setupResponseWriter`

    - ### Methods inherited from class javax.faces.webapp.UIComponentTagBase

      `getComponentType, getRendererType`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface javax.servlet.jsp.tagext.Tag

      `getParent, setPageContext, setParent`

- - ### Field Detail

    - #### DOCUMENT_CREATED_KEY

          @Deprecated
          public static final String DOCUMENT_CREATED_KEY

      Deprecated. Not used any more in the session state manager
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### UIXComponentELTag

          public UIXComponentELTag()

  - ### Method Detail

    - #### setAttributeChangeListener

          public void setAttributeChangeListener(javax.el.MethodExpression attributeChangeListener)

    - #### doStartTag

          public int doStartTag()
                         throws javax.servlet.jsp.JspException

      Specified by:
        `doStartTag` in interface `javax.servlet.jsp.tagext.Tag`
      Overrides:
        `doStartTag` in class `javax.faces.webapp.UIComponentClassicTagBase`
      Throws:
        `javax.servlet.jsp.JspException`

    - #### doEndTag

          public int doEndTag()
                       throws javax.servlet.jsp.JspException

      Specified by:
        `doEndTag` in interface `javax.servlet.jsp.tagext.Tag`
      Overrides:
        `doEndTag` in class `javax.faces.webapp.UIComponentClassicTagBase`
      Throws:
        `javax.servlet.jsp.JspException`

    - #### isProcessingStampingComponentTag

          protected boolean isProcessingStampingComponentTag()

      Check if a tag that creates components that stamp their children (tag that creates a component that stamps out its contents, potentially rendering the children multiple times) is currently executing (between doStartTag and doEndTag).

    - #### isStampingTag

          protected boolean isStampingTag()

      Check if this tag is a stamping tag (tag that creates a component that stamps out its contents, potentially rendering the children multiple times).

    - #### checkChildTagExecution

          protected UIXComponentELTag.CheckExecutionResult checkChildTagExecution(javax.faces.webapp.UIComponentELTag childTag,
                                                                      String facetName)

      Check if a child component tag should execute or not. Allows the parent tag to control if child components are created for optimization purposes. Only called if the current tag is not in a stamping tag.

      Called from the doStartTag of the child tag to see if the parent tag wishes to prevent the execution of the child tag. This is called before the child tag creates its component.

      This may be overridden by a tag to check if a child tag's body should be executed. The framework will call this method when the child tag is executing.

      If inside of a stamping container this code is not executed as component state may change per stamp and therefore the tag will not have access to that state since the component does not stamp during tag execution. Therefore, it is best to avoid trying to defer child execution when component state is not known.

      This method is called by the framework where the `checkChildTagExecution(UIComponent)` function is called by sub-classes of `UIXComponentELTag`.

      Parameters:
        `childTag` - The child tag
        `facetName` - The facet, if any, for the child tag
      Returns:
        if the child tag body should be executed or not

    - #### createComponent

          protected javax.faces.component.UIComponent createComponent(javax.faces.context.FacesContext context,
                                                          String newId)
                                                               throws javax.servlet.jsp.JspException

      When within a component binding context, the component bindings (stored in backing bean) will be cleared so a new component instance can be created.
      Overrides:
        `createComponent` in class `javax.faces.webapp.UIComponentELTag`
      Parameters:
        `context` - FacesContext instance
        `newId` - id for the component
      Throws:
        `javax.servlet.jsp.JspException`

    - #### release

          public void release()

      Specified by:
        `release` in interface `javax.servlet.jsp.tagext.Tag`
      Overrides:
        `release` in class `javax.faces.webapp.UIComponentELTag`

    - #### checkChildTagExecution

          public UIXComponentELTag.CheckExecutionResult checkChildTagExecution(javax.faces.component.UIComponent childComponent)

      Allows a child tag to check if its children should be executed based on the grand-parent. Used for components where a parent-child relationship has been established. For example, allows the show detail item to ask the parent panelTabbed tag if the show detail item should allow children components of the show detail item to be created.

      This method is not called by the framework, but may be called by a child tag on the parent tag. The parent tag should override this method to determine if a child tag should execute its children tags. In the above example, the show detail item tag should call this method on the panelTabbed tag to see if the show detail item's children tags should be executed.

      This method is called by sub-classes and is not called by the framework at any time. The framework will invoke the `checkChildTagExecution(UIComponentELTag, String)` method during the execution of the start tag.

      Parameters:
        `childComponent` - The child component
      Returns:
        if the children tags of the child component should execute their tag bodies

    - #### setProperties

          protected final void setProperties(javax.faces.component.UIComponent component)

      Overrides:
        `setProperties` in class `javax.faces.webapp.UIComponentELTag`

    - #### setProperty

          protected void setProperty(FacesBean bean,
                         PropertyKey key,
                         javax.el.ValueExpression expression)

    - #### setStringArrayProperty

          protected void setStringArrayProperty(FacesBean bean,
                                    PropertyKey key,
                                    javax.el.ValueExpression expression)

      Set a property of type java.lang.String[]. If the value is an EL expression, it will be stored as a ValueExpression. Otherwise, it will parsed as a whitespace-separated series of strings. Null values are ignored.

    - #### setStringListProperty

          protected void setStringListProperty(FacesBean bean,
                                   PropertyKey key,
                                   javax.el.ValueExpression expression)

      Set a property of type java.util.List<java.lang.String>. If the value is an EL expression, it will be stored as a ValueExpression. Otherwise, it will parsed as a whitespace-separated series of strings. Null values are ignored.

    - #### setStringSetProperty

          protected void setStringSetProperty(FacesBean bean,
                                  PropertyKey key,
                                  javax.el.ValueExpression expression)

      Set a property of type java.util.Set<java.lang.String>. If the value is an EL expression, it will be stored as a ValueExpression. Otherwise, it will parsed as a whitespace-separated series of strings. Null values are ignored.

    - #### setNumberProperty

          protected void setNumberProperty(FacesBean bean,
                               PropertyKey key,
                               javax.el.ValueExpression expression)

      Set a property of type java.lang.Number. If the value is an EL expression, it will be stored as a ValueBinding. Otherwise, it will parsed with Integer.valueOf() or Double.valueOf() . Null values are ignored.

    - #### setIntArrayProperty

          protected void setIntArrayProperty(FacesBean bean,
                                 PropertyKey key,
                                 javax.el.ValueExpression expression)

      Set a property of type int[]. If the value is an EL expression, it will be stored as a ValueExpression. Otherwise, it will parsed as a whitespace-separated series of ints. Null values are ignored.

    - #### setBinding

          public void setBinding(javax.el.ValueExpression valueExpression)
                          throws javax.servlet.jsp.JspException

      Overrides:
        `setBinding` in class `javax.faces.webapp.UIComponentELTag`
      Throws:
        `javax.servlet.jsp.JspException`

    - #### setDateProperty

          protected void setDateProperty(FacesBean bean,
                             PropertyKey key,
                             javax.el.ValueExpression expression)

      Set a property of type java.util.Date. If the value is an EL expression, it will be stored as a ValueExpression. Otherwise, it will parsed as an ISO 8601 date (yyyy-MM-dd). Null values are ignored.

    - #### setMaxDateProperty

          protected void setMaxDateProperty(FacesBean bean,
                                PropertyKey key,
                                javax.el.ValueExpression expression)

      Set a property of type java.util.Date. If the value is an EL expression, it will be stored as a ValueBinding. Otherwise, it will parsed as an ISO 8601 date (yyyy-MM-dd) and the time components (hour, min, second, millisecond) maximized. Null values are ignored.

    - #### setProperties

          protected void setProperties(FacesBean bean)

    - #### setValidationError

          protected void setValidationError(String validationError)

      Sets any fatal validation error that could have happened during property setting. If this is set, tag execution aborts with a JspException at the end of doStartTag().
      Parameters:
        `validationError` -

Copyright © 2001-2017 The Apache Software Foundation. All Rights Reserved.