Class ImportSupport
- java.lang.Object
-
- jakarta.servlet.jsp.tagext.TagSupport
-
- jakarta.servlet.jsp.tagext.BodyTagSupport
-
- org.apache.taglibs.standard.tag.common.core.ImportSupport
-
- All Implemented Interfaces:
BodyTag,IterationTag,JspTag,Tag,TryCatchFinally,Serializable,ParamParent
public abstract class ImportSupport extends BodyTagSupport implements TryCatchFinally, ParamParent
Support for tag handlers for <import>, the general-purpose text-importing mechanism for JSTL 1.0. The rtexprvalue and expression- evaluating libraries each have handlers that extend this class.
- Author:
- Shawn Bayern
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected StringcharEncodingprotected Stringcontextstatic StringDEFAULT_ENCODINGDefault character encoding for response.protected Stringurlstatic StringVALID_SCHEME_CHARSValid characters in a scheme.-
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, EVAL_BODY_TAG
-
Fields inherited from interface jakarta.servlet.jsp.tagext.IterationTag
EVAL_BODY_AGAIN
-
Fields inherited from interface jakarta.servlet.jsp.tagext.Tag
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
-
-
Constructor Summary
Constructors Constructor Description ImportSupport()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddParameter(String name, String value)Adds a parameter to this tag's URL.voiddoCatch(Throwable t)Invoked if a Throwable occurs while evaluating the BODY inside a tag or in any of the following methods: Tag.doStartTag(), Tag.doEndTag(), IterationTag.doAfterBody() and BodyTag.doInitBody().intdoEndTag()Default processing of the end tag returning EVAL_PAGE.voiddoFinally()Invoked in all cases after doEndTag() for any class implementing Tag, IterationTag or BodyTag.intdoStartTag()Default processing of the start tag returning EVAL_BODY_BUFFERED.static booleanisAbsoluteUrl(String url)Returns true if our current URL is absolute, false otherwise.voidrelease()Release state.voidsetScope(String scope)voidsetVar(String var)voidsetVarReader(String varReader)static StringstripSession(String url)Strips a servlet session ID from url.-
Methods inherited from class jakarta.servlet.jsp.tagext.BodyTagSupport
doAfterBody, doInitBody, getBodyContent, getPreviousOut, setBodyContent
-
Methods inherited from class jakarta.servlet.jsp.tagext.TagSupport
findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, 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 Detail
-
VALID_SCHEME_CHARS
public static final String VALID_SCHEME_CHARS
Valid characters in a scheme.
RFC 1738 says the following:
Scheme names consist of a sequence of characters. The lower case letters "a"--"z", digits, and the characters plus ("+"), period ("."), and hyphen ("-") are allowed. For resiliency, programs interpreting URLs should treat upper case letters as equivalent to lower case in scheme names (e.g., allow "HTTP" as well as "http").
We treat as absolute any URL that begins with such a scheme name, followed by a colon.
- See Also:
- Constant Field Values
-
DEFAULT_ENCODING
public static final String DEFAULT_ENCODING
Default character encoding for response.- See Also:
- Constant Field Values
-
url
protected String url
-
context
protected String context
-
charEncoding
protected String charEncoding
-
-
Method Detail
-
doStartTag
public int doStartTag() throws JspExceptionDescription copied from class:BodyTagSupportDefault processing of the start tag returning EVAL_BODY_BUFFERED.- Specified by:
doStartTagin interfaceTag- Overrides:
doStartTagin classBodyTagSupport- Returns:
- EVAL_BODY_BUFFERED
- Throws:
JspException- if an error occurred while processing this tag- See Also:
Tag.doStartTag()
-
doEndTag
public int doEndTag() throws JspExceptionDescription copied from class:BodyTagSupportDefault processing of the end tag returning EVAL_PAGE.- Specified by:
doEndTagin interfaceTag- Overrides:
doEndTagin classBodyTagSupport- Returns:
- EVAL_PAGE
- Throws:
JspException- if an error occurred while processing this tag- See Also:
Tag.doEndTag()
-
doCatch
public void doCatch(Throwable t) throws Throwable
Description copied from interface:TryCatchFinallyInvoked if a Throwable occurs while evaluating the BODY inside a tag or in any of the following methods: Tag.doStartTag(), Tag.doEndTag(), IterationTag.doAfterBody() and BodyTag.doInitBody().This method is not invoked if the Throwable occurs during one of the setter methods.
This method may throw an exception (the same or a new one) that will be propagated further up the nest chain. If an exception is thrown, doFinally() will be invoked.
This method is intended to be used to respond to an exceptional condition.
- Specified by:
doCatchin interfaceTryCatchFinally- Parameters:
t- The throwable exception navigating through this tag.- Throws:
Throwable- if the exception is to be rethrown further up the nest chain.
-
doFinally
public void doFinally()
Description copied from interface:TryCatchFinallyInvoked in all cases after doEndTag() for any class implementing Tag, IterationTag or BodyTag. This method is invoked even if an exception has occurred in the BODY of the tag, or in any of the following methods: Tag.doStartTag(), Tag.doEndTag(), IterationTag.doAfterBody() and BodyTag.doInitBody().This method is not invoked if the Throwable occurs during one of the setter methods.
This method should not throw an Exception.
This method is intended to maintain per-invocation data integrity and resource management actions.
- Specified by:
doFinallyin interfaceTryCatchFinally
-
release
public void release()
Description copied from class:BodyTagSupportRelease state.- Specified by:
releasein interfaceTag- Overrides:
releasein classBodyTagSupport- See Also:
Tag.release()
-
setVar
public void setVar(String var)
-
setVarReader
public void setVarReader(String varReader)
-
setScope
public void setScope(String scope)
-
addParameter
public void addParameter(String name, String value)
Description copied from interface:ParamParentAdds a parameter to this tag's URL. The intent is that the <param> subtag will call this to register URL parameters. Assumes that 'name' and 'value' are appropriately encoded and do not contain any meaningful metacharacters; in order words, escaping is the responsibility of the caller.- Specified by:
addParameterin interfaceParamParent- See Also:
ParamSupport
-
isAbsoluteUrl
public static boolean isAbsoluteUrl(String url)
Returns true if our current URL is absolute, false otherwise.
-
-