public class SimpleTagSupport extends java.lang.Object implements SimpleTag
The SimpleTagSupport class is a utility class intended to be used as the base class for new simple tag handlers. The SimpleTagSupport class implements the SimpleTag interface and adds additional convenience methods including getter methods for the properties in SimpleTag.
Constructor and Description |
---|
SimpleTagSupport()
Sole constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
doTag()
Default processing of the tag does nothing.
|
static JspTag |
findAncestorWithClass(JspTag from,
java.lang.Class<?> klass)
Find the instance of a given class type that is closest to a given
instance.
|
protected JspFragment |
getJspBody()
Returns the body passed in by the container via setJspBody.
|
protected JspContext |
getJspContext()
Returns the page context passed in by the container via
setJspContext.
|
JspTag |
getParent()
Returns the parent of this tag, for collaboration purposes.
|
void |
setJspBody(JspFragment jspBody)
Stores the provided JspFragment.
|
void |
setJspContext(JspContext pc)
Stores the provided JSP context in the private jspContext field.
|
void |
setParent(JspTag parent)
Sets the parent of this tag, for collaboration purposes.
|
public SimpleTagSupport()
public void doTag() throws JspException, java.io.IOException
doTag
in interface SimpleTag
JspException
- Subclasses can throw JspException to indicate
an error occurred while processing this tag.SkipPageException
- If the page that
(either directly or indirectly) invoked this tag is to
cease evaluation. A Simple Tag Handler generated from a
tag file must throw this exception if an invoked Classic
Tag Handler returned SKIP_PAGE or if an invoked Simple
Tag Handler threw SkipPageException or if an invoked Jsp Fragment
threw a SkipPageException.java.io.IOException
- Subclasses can throw IOException if there was
an error writing to the output streamSimpleTag.doTag()
public void setParent(JspTag parent)
The container invokes this method only if this tag invocation is nested within another tag invocation.
public JspTag getParent()
public void setJspContext(JspContext pc)
JspContext
via
getJspContext()
.setJspContext
in interface SimpleTag
pc
- the page context for this invocationSimpleTag.setJspContext(javax.servlet.jsp.JspContext)
protected JspContext getJspContext()
public void setJspBody(JspFragment jspBody)
setJspBody
in interface SimpleTag
jspBody
- The fragment encapsulating the body of this tag.
If the action element is empty in the page, this method is
not called at all.SimpleTag.setJspBody(javax.servlet.jsp.tagext.JspFragment)
protected JspFragment getJspBody()
public static final JspTag findAncestorWithClass(JspTag from, java.lang.Class<?> klass)
For every instance of TagAdapter encountered while traversing the ancestors, the tag handler returned by TagAdapter.getAdaptee() - instead of the TagAdapter itself - is compared to klass. If the tag handler matches, it - and not its TagAdapter - is returned.
The current version of the specification only provides one formal way of indicating the observable type of a tag handler: its tag handler implementation class, described in the tag-class subelement of the tag element. This is extended in an informal manner by allowing the tag library author to indicate in the description subelement an observable type. The type should be a subtype of the tag handler implementation class or void. This additional constraint can be exploited by a specialized container that knows about that specific tag library, as in the case of the JSP standard tag library.
When a tag library author provides information on the observable type of a tag handler, client programmatic code should adhere to that constraint. Specifically, the Class passed to findAncestorWithClass should be a subtype of the observable type.
from
- The instance from where to start looking.klass
- The subclass of JspTag or interface to be matchedCopyright © 2000-2017 Apache Software Foundation. All Rights Reserved.