Class ApplyDecoratorTag

java.lang.Object
jakarta.servlet.jsp.tagext.TagSupport
jakarta.servlet.jsp.tagext.BodyTagSupport
com.opensymphony.module.sitemesh.taglib.page.ApplyDecoratorTag
All Implemented Interfaces:
RequestConstants, jakarta.servlet.jsp.tagext.BodyTag, jakarta.servlet.jsp.tagext.IterationTag, jakarta.servlet.jsp.tagext.JspTag, jakarta.servlet.jsp.tagext.Tag, Serializable

public class ApplyDecoratorTag extends jakarta.servlet.jsp.tagext.BodyTagSupport implements RequestConstants
This tag inserts an external resource as a panel into the current Page.

The page attribute should point to the panel resource which should expose an entire page (e.g. another JSP file producing HTML). This attribute can be relative to the page it is being called from or an absolute path from the context-root.

OR

If the page attribute is not specified, the body content is parsed into the Page object and has the Decorator applied.

The (optional) decorator attribute is the name of the Decorator to apply to the included page. Note that the implementation of DecoratorMapper can overide this.

Version:
$Revision: 1.5 $
Author:
Joe Walnes
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    (package private) class 
     
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private Config
     
    private String
     
    private String
     
     
    private String
     
    private String
     
    private Map
     

    Fields inherited from class jakarta.servlet.jsp.tagext.BodyTagSupport

    bodyContent

    Fields inherited from class jakarta.servlet.jsp.tagext.TagSupport

    id, pageContext

    Fields inherited from interface jakarta.servlet.jsp.tagext.BodyTag

    EVAL_BODY_BUFFERED

    Fields inherited from interface jakarta.servlet.jsp.tagext.IterationTag

    EVAL_BODY_AGAIN

    Fields inherited from interface com.opensymphony.module.sitemesh.RequestConstants

    DECORATOR, FILTER_APPLIED, PAGE, ROBOT, USING_STREAM

    Fields inherited from interface jakarta.servlet.jsp.tagext.Tag

    EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    (package private) void
    addParam(String name, String value)
    Add a parameter to the page.
    int
    Ensure that external page contents are included in bodycontent.
    int
    Standard taglib method: apply decorator to page.
    int
     
    void
    Release all attributes
    void
    setContentType(String contentType)
     
    void
    setDecorator(String decorator)
    Deprecated.
    Use setName() instead.
    void
    setEncoding(String encoding)
     
    void
    Tag attribute: If set, this value will override the 'id' property of the page.
    void
    setName(String decorator)
    Tag attribute: Name of Decorator to apply to Page.
    void
    Tag attribute: URI of page to include.
    void
    Tag attribute: If set, this value will override the 'title' property of the page.
    static void
    Log exception generated by taglib.

    Methods inherited from class jakarta.servlet.jsp.tagext.BodyTagSupport

    doInitBody, getBodyContent, getPreviousOut, setBodyContent

    Methods inherited from class jakarta.servlet.jsp.tagext.TagSupport

    findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setPageContext, setParent, setValue

    Methods inherited from class java.lang.Object

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

    Methods inherited from interface jakarta.servlet.jsp.tagext.Tag

    getParent, setPageContext, setParent
  • Field Details

    • page

      private String page
    • decorator

      private String decorator
    • contentType

      private String contentType
    • encoding

      private String encoding
    • params

      private Map params
    • config

      private Config config
    • decoratorMapper

      private DecoratorMapper decoratorMapper
  • Constructor Details

    • ApplyDecoratorTag

      public ApplyDecoratorTag()
  • Method Details

    • setPage

      public void setPage(String page)
      Tag attribute: URI of page to include. Can be relative to page being called from, or absolute path from context-root of web-app.
    • addParam

      void addParam(String name, String value)
      Add a parameter to the page. This has a package level access modifier so ParamTag can also call it.
    • setTitle

      public void setTitle(String title)
      Tag attribute: If set, this value will override the 'title' property of the page. This is a convenience utility and is identical to specifing a 'page:param name=title' tag.
    • setId

      public void setId(String id)
      Tag attribute: If set, this value will override the 'id' property of the page. This is a convenience utility and is identical to specifing a 'page:param name=id' tag.
      Overrides:
      setId in class jakarta.servlet.jsp.tagext.TagSupport
    • setName

      public void setName(String decorator)
      Tag attribute: Name of Decorator to apply to Page. This is passed to DecoratorMapper to retrieve appropriate Decorator. DecoratorMapper may override if needed.
      See Also:
    • setDecorator

      public void setDecorator(String decorator)
      Deprecated.
      Use setName() instead.
    • setContentType

      public void setContentType(String contentType)
    • setEncoding

      public void setEncoding(String encoding)
    • doStartTag

      public int doStartTag()
      Specified by:
      doStartTag in interface jakarta.servlet.jsp.tagext.Tag
      Overrides:
      doStartTag in class jakarta.servlet.jsp.tagext.BodyTagSupport
    • doAfterBody

      public int doAfterBody() throws jakarta.servlet.jsp.JspException
      Ensure that external page contents are included in bodycontent.
      Specified by:
      doAfterBody in interface jakarta.servlet.jsp.tagext.IterationTag
      Overrides:
      doAfterBody in class jakarta.servlet.jsp.tagext.BodyTagSupport
      Throws:
      jakarta.servlet.jsp.JspException
    • doEndTag

      public int doEndTag() throws jakarta.servlet.jsp.JspException
      Standard taglib method: apply decorator to page.
      Specified by:
      doEndTag in interface jakarta.servlet.jsp.tagext.Tag
      Overrides:
      doEndTag in class jakarta.servlet.jsp.tagext.BodyTagSupport
      Throws:
      jakarta.servlet.jsp.JspException
    • release

      public void release()
      Release all attributes
      Specified by:
      release in interface jakarta.servlet.jsp.tagext.Tag
      Overrides:
      release in class jakarta.servlet.jsp.tagext.BodyTagSupport
    • trace

      public static void trace(Exception e)
      Log exception generated by taglib.