Class UIComponentELTag

  • 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 UIComponentELTag
    extends UIComponentClassicTagBase
    implements javax.servlet.jsp.tagext.Tag

    UIComponentELTag specializes its superclass to allow for properties that take their values from EL API expressions.

    This tag is designed for use with Faces version 1.2 and JSP version 2.1 containers.

    • Constructor Detail

      • UIComponentELTag

        public UIComponentELTag()
    • Method Detail

      • setBinding

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

        Set the value expression for our component.

        Parameters:
        binding - The new value expression
        Throws:
        javax.servlet.jsp.JspException - if an error occurs
      • hasBinding

        protected boolean hasBinding()
        Description copied from class: UIComponentClassicTagBase

        Return true if this component has a non-null binding attribute. This method is necessary to allow subclasses that expose the binding property as an Faces 1.1 style EL property as well as subclasses that expose it as an EL API property.

        Specified by:
        hasBinding in class UIComponentClassicTagBase
      • setRendered

        public void setRendered​(javax.el.ValueExpression rendered)

        Set an override for the rendered attribute.

        Parameters:
        rendered - The new value for rendered attribute
      • getELContext

        protected javax.el.ELContext getELContext()

        Return the ELContext for the FacesContext for this request.

        This is a convenience for getFacesContext().getELContext().

        Overrides:
        getELContext in class UIComponentTagBase
      • release

        public void release()

        Release any resources allocated during the execution of this tag handler.

        Specified by:
        release in interface javax.servlet.jsp.tagext.Tag
        Overrides:
        release in class UIComponentClassicTagBase
      • setProperties

        protected void setProperties​(UIComponent component)

        Override properties and attributes of the specified component, if the corresponding properties of this tag handler instance were explicitly set. This method must be called ONLY if the specified UIComponent was in fact created during the execution of this tag handler instance, and this call will occur BEFORE the UIComponent is added to the view.

        Tag subclasses that want to support additional set properties must ensure that the base class setProperties() method is still called. A typical implementation that supports extra properties foo and bar would look something like this:

         protected void setProperties(UIComponent component) {
           super.setProperties(component);
           if (foo != null) {
             component.setAttribute("foo", foo);
           }
           if (bar != null) {
             component.setAttribute("bar", bar);
           }
         }
         

        The default implementation overrides the following properties:

        • rendered - Set if a value for the rendered property is specified for this tag handler instance.
        • rendererType - Set if the getRendererType() method returns a non-null value.
        Specified by:
        setProperties in class UIComponentClassicTagBase
        Parameters:
        component - UIComponent whose properties are to be overridden