public abstract class ImportSupport extends javax.servlet.jsp.tagext.BodyTagSupport implements javax.servlet.jsp.tagext.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.
| Modifier and Type | Class and Description |
|---|---|
private class |
ImportSupport.ImportRequestWrapper
Wraps requests to allow us to enforce the method to be GET
|
private class |
ImportSupport.ImportResponseWrapper
Wraps responses to allow us to retrieve results as Strings.
|
| Modifier and Type | Field and Description |
|---|---|
protected java.lang.String |
charEncoding |
protected java.lang.String |
context |
static java.lang.String |
DEFAULT_ENCODING
Default character encoding for response.
|
private boolean |
isAbsoluteUrl |
private ParamSupport.ParamManager |
params |
private java.io.Reader |
r |
private int |
scope |
protected java.lang.String |
url |
private java.lang.String |
urlWithParams |
static java.lang.String |
VALID_SCHEME_CHARS
Valid characters in a scheme.
|
private java.lang.String |
var |
private java.lang.String |
varReader |
| Constructor and Description |
|---|
ImportSupport() |
| Modifier and Type | Method and Description |
|---|---|
private java.io.Reader |
acquireReader() |
private java.lang.String |
acquireString() |
void |
addParameter(java.lang.String name,
java.lang.String value)
Adds a parameter to this tag's URL.
|
void |
doCatch(java.lang.Throwable t) |
int |
doEndTag() |
void |
doFinally() |
int |
doStartTag() |
private void |
init() |
private boolean |
isAbsoluteUrl()
Returns true if our current URL is absolute,
false otherwise.
|
static boolean |
isAbsoluteUrl(java.lang.String url)
Returns true if our current URL is absolute,
false otherwise.
|
void |
release() |
void |
setScope(java.lang.String scope) |
void |
setVar(java.lang.String var) |
void |
setVarReader(java.lang.String varReader) |
static java.lang.String |
stripSession(java.lang.String url)
Strips a servlet session ID from url.
|
private java.lang.String |
targetUrl()
Returns our URL (potentially with parameters)
|
doAfterBody, doInitBody, getBodyContent, getPreviousOut, setBodyContentfindAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValuepublic static final java.lang.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.
public static final java.lang.String DEFAULT_ENCODING
protected java.lang.String url
protected java.lang.String context
protected java.lang.String charEncoding
private java.lang.String var
private int scope
private java.lang.String varReader
private java.io.Reader r
private boolean isAbsoluteUrl
private ParamSupport.ParamManager params
private java.lang.String urlWithParams
private void init()
public int doStartTag()
throws javax.servlet.jsp.JspException
doStartTag in interface javax.servlet.jsp.tagext.TagdoStartTag in class javax.servlet.jsp.tagext.BodyTagSupportjavax.servlet.jsp.JspExceptionpublic int doEndTag()
throws javax.servlet.jsp.JspException
doEndTag in interface javax.servlet.jsp.tagext.TagdoEndTag in class javax.servlet.jsp.tagext.BodyTagSupportjavax.servlet.jsp.JspExceptionpublic void doCatch(java.lang.Throwable t)
throws java.lang.Throwable
doCatch in interface javax.servlet.jsp.tagext.TryCatchFinallyjava.lang.Throwablepublic void doFinally()
doFinally in interface javax.servlet.jsp.tagext.TryCatchFinallypublic void release()
release in interface javax.servlet.jsp.tagext.Tagrelease in class javax.servlet.jsp.tagext.BodyTagSupportpublic void setVar(java.lang.String var)
public void setVarReader(java.lang.String varReader)
public void setScope(java.lang.String scope)
public void addParameter(java.lang.String name,
java.lang.String value)
ParamParentaddParameter in interface ParamParentParamSupportprivate java.lang.String acquireString()
throws java.io.IOException,
javax.servlet.jsp.JspException
java.io.IOExceptionjavax.servlet.jsp.JspExceptionprivate java.io.Reader acquireReader()
throws java.io.IOException,
javax.servlet.jsp.JspException
java.io.IOExceptionjavax.servlet.jsp.JspExceptionprivate java.lang.String targetUrl()
private boolean isAbsoluteUrl()
throws javax.servlet.jsp.JspTagException
javax.servlet.jsp.JspTagExceptionpublic static boolean isAbsoluteUrl(java.lang.String url)
public static java.lang.String stripSession(java.lang.String url)