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, setBodyContent
findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue
public 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.Tag
doStartTag
in class javax.servlet.jsp.tagext.BodyTagSupport
javax.servlet.jsp.JspException
public int doEndTag() throws javax.servlet.jsp.JspException
doEndTag
in interface javax.servlet.jsp.tagext.Tag
doEndTag
in class javax.servlet.jsp.tagext.BodyTagSupport
javax.servlet.jsp.JspException
public void doCatch(java.lang.Throwable t) throws java.lang.Throwable
doCatch
in interface javax.servlet.jsp.tagext.TryCatchFinally
java.lang.Throwable
public void doFinally()
doFinally
in interface javax.servlet.jsp.tagext.TryCatchFinally
public void release()
release
in interface javax.servlet.jsp.tagext.Tag
release
in class javax.servlet.jsp.tagext.BodyTagSupport
public 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)
ParamParent
addParameter
in interface ParamParent
ParamSupport
private java.lang.String acquireString() throws java.io.IOException, javax.servlet.jsp.JspException
java.io.IOException
javax.servlet.jsp.JspException
private java.io.Reader acquireReader() throws java.io.IOException, javax.servlet.jsp.JspException
java.io.IOException
javax.servlet.jsp.JspException
private java.lang.String targetUrl()
private boolean isAbsoluteUrl() throws javax.servlet.jsp.JspTagException
javax.servlet.jsp.JspTagException
public static boolean isAbsoluteUrl(java.lang.String url)
public static java.lang.String stripSession(java.lang.String url)