Class SubnavTag

  • All Implemented Interfaces:
    Serializable, javax.servlet.jsp.tagext.BodyTag, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag

    public class SubnavTag
    extends javax.servlet.jsp.tagext.BodyTagSupport

    A simple JSP tag for displaying sub-navigation bar information in the admin console. The TabsTag is similiar to this one.

    Attributes:

    • bean (required) - the id of the request attribute which is a AdminPageBean instance. This class holds information needed to properly render the admin console sidebar.
    • css (optional) - the CSS class name used to decorate the LI of the sidebar items.
    • currentcss (optional) - the CSS class name used to decorate the LI of the currently selected sidebar item.
    • heaadercss (optional) - the CSS class name used to decorate the LI of the header section.

    This class assumes there is a request attribute with the name specified by the bean attribute.

    This tag prints out minimal HTML. It basically prints an unordered list (UL element) with each LI containing an "A" tag specfied by the body content of this tag. For example, the body should contain a template A tag which will have its values replaced at runtime:

    
    
          &lt;jive:sidebar bean="jivepageinfo"&gt; <br>
              &nbsp;&nbsp;&nbsp;&lt;a href="[url]" title="[description]"&gt;[name]&lt;/a&gt; <br>
              &nbsp;&nbsp;&nbsp;&lt;jive:subsidebar&gt; ... &lt;/jive:subsidebar&gt; <br>
          &lt;/jive:sidebar&gt;

    There is a subsidebar tag for rendering the sub-sidebars. For more info, see the SubSidebarTag class.

    Available tokens for the "A" tag are:

    • [id] - the ID of the sidebar item, usually not needed.
    • [name] - the name of the sidebar item, should be thought of as the display name.
    • [url] - the URL of the sidebar item.
    • [description] - the description of the sidebar item, good for mouse rollovers.
    See Also:
    Serialized Form
    • Field Summary

      • Fields inherited from class javax.servlet.jsp.tagext.BodyTagSupport

        bodyContent
      • Fields inherited from class javax.servlet.jsp.tagext.TagSupport

        id, pageContext
      • 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
      • Fields inherited from interface javax.servlet.jsp.tagext.Tag

        EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
    • Constructor Summary

      Constructors 
      Constructor Description
      SubnavTag()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int doEndTag()
      Gets the AdminPageBean instance from the request.
      int doStartTag()
      Does nothing, returns BodyTag.EVAL_BODY_BUFFERED always.
      String getCss()
      Returns the value of the CSS class to be used for tab decoration.
      String getCurrentcss()
      Returns the value of the CSS class to be used for the currently selected LI (tab).
      void setCss​(String css)
      Sets the CSS used for tab decoration.
      void setCurrentcss​(String currentcss)
      Sets the CSS class value for the currently selected tab.
      • Methods inherited from class javax.servlet.jsp.tagext.BodyTagSupport

        doAfterBody, doInitBody, getBodyContent, getPreviousOut, release, setBodyContent
      • Methods inherited from class javax.servlet.jsp.tagext.TagSupport

        findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue
      • Methods inherited from interface javax.servlet.jsp.tagext.Tag

        getParent, setPageContext, setParent
    • Constructor Detail

      • SubnavTag

        public SubnavTag()
    • Method Detail

      • getCss

        public String getCss()
        Returns the value of the CSS class to be used for tab decoration. If not set will return a blank string.
        Returns:
        the CSS for the tab
      • setCss

        public void setCss​(String css)
        Sets the CSS used for tab decoration.
        Parameters:
        css - The CSS for the tab
      • getCurrentcss

        public String getCurrentcss()
        Returns the value of the CSS class to be used for the currently selected LI (tab). If not set will return a blank string.
        Returns:
        the CSS class
      • setCurrentcss

        public void setCurrentcss​(String currentcss)
        Sets the CSS class value for the currently selected tab.
        Parameters:
        currentcss - the CSS class
      • doStartTag

        public int doStartTag()
                       throws javax.servlet.jsp.JspException
        Does nothing, returns BodyTag.EVAL_BODY_BUFFERED always.
        Specified by:
        doStartTag in interface javax.servlet.jsp.tagext.Tag
        Overrides:
        doStartTag in class javax.servlet.jsp.tagext.BodyTagSupport
        Throws:
        javax.servlet.jsp.JspException
      • doEndTag

        public int doEndTag()
                     throws javax.servlet.jsp.JspException
        Gets the AdminPageBean instance from the request. If it doesn't exist then execution is stopped and nothing is printed. If it exists, retrieve values from it and render the sidebar items. The body content of the tag is assumed to have an A tag in it with tokens to replace (see class description) as well as having a subsidebar tag..
        Specified by:
        doEndTag in interface javax.servlet.jsp.tagext.Tag
        Overrides:
        doEndTag in class javax.servlet.jsp.tagext.BodyTagSupport
        Returns:
        Tag.EVAL_PAGE after rendering the tabs.
        Throws:
        javax.servlet.jsp.JspException - if an exception occurs while rendering the sidebar items.