Class ImportSupport

  • All Implemented Interfaces:
    java.io.Serializable, javax.servlet.jsp.tagext.BodyTag, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag, javax.servlet.jsp.tagext.TryCatchFinally, ParamParent
    Direct Known Subclasses:
    ImportTag, ImportTag, ImportTag

    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.

    See Also:
    Serialized Form
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      private class  ImportSupport.ImportResponseWrapper
      Wraps responses to allow us to retrieve results as Strings.
    • Field Summary

      Fields 
      Modifier and Type Field 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  
      private java.lang.String var  
      private java.lang.String varReader  
      • Fields inherited from class javax.servlet.jsp.tagext.BodyTagSupport

        bodyContent
      • Fields inherited from class javax.servlet.jsp.tagext.TagSupport

        id, pageContext
      • Fields inherited from interface javax.servlet.jsp.tagext.BodyTag

        EVAL_BODY_BUFFERED, EVAL_BODY_TAG
      • Fields inherited from interface javax.servlet.jsp.tagext.IterationTag

        EVAL_BODY_AGAIN
      • Fields inherited from interface javax.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
      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()  
      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)
      • Methods inherited from class javax.servlet.jsp.tagext.BodyTagSupport

        doAfterBody, doInitBody, getBodyContent, getPreviousOut, setBodyContent
      • Methods inherited from class javax.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 javax.servlet.jsp.tagext.Tag

        getParent, setPageContext, setParent
    • Field Detail

      • DEFAULT_ENCODING

        public static final java.lang.String DEFAULT_ENCODING
        Default character encoding for response.
        See Also:
        Constant Field Values
      • url

        protected java.lang.String url
      • context

        protected java.lang.String context
      • charEncoding

        protected java.lang.String charEncoding
      • var

        private java.lang.String var
      • scope

        private int scope
      • varReader

        private java.lang.String varReader
      • r

        private java.io.Reader r
      • isAbsoluteUrl

        private boolean isAbsoluteUrl
      • urlWithParams

        private java.lang.String urlWithParams
    • Constructor Detail

      • ImportSupport

        public ImportSupport()
    • Method Detail

      • init

        private void init()
      • doStartTag

        public int doStartTag()
                       throws javax.servlet.jsp.JspException
        Specified by:
        doStartTag in interface javax.servlet.jsp.tagext.Tag
        Overrides:
        doStartTag in class javax.servlet.jsp.tagext.BodyTagSupport
        Throws:
        javax.servlet.jsp.JspException
      • doEndTag

        public int doEndTag()
                     throws javax.servlet.jsp.JspException
        Specified by:
        doEndTag in interface javax.servlet.jsp.tagext.Tag
        Overrides:
        doEndTag in class javax.servlet.jsp.tagext.BodyTagSupport
        Throws:
        javax.servlet.jsp.JspException
      • doCatch

        public void doCatch​(java.lang.Throwable t)
                     throws java.lang.Throwable
        Specified by:
        doCatch in interface javax.servlet.jsp.tagext.TryCatchFinally
        Throws:
        java.lang.Throwable
      • doFinally

        public void doFinally()
        Specified by:
        doFinally in interface javax.servlet.jsp.tagext.TryCatchFinally
      • release

        public void release()
        Specified by:
        release in interface javax.servlet.jsp.tagext.Tag
        Overrides:
        release in class javax.servlet.jsp.tagext.BodyTagSupport
      • setVar

        public void setVar​(java.lang.String var)
      • setVarReader

        public void setVarReader​(java.lang.String varReader)
      • setScope

        public void setScope​(java.lang.String scope)
      • addParameter

        public void addParameter​(java.lang.String name,
                                 java.lang.String value)
        Description copied from interface: ParamParent
        Adds 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:
        addParameter in interface ParamParent
        See Also:
        ParamSupport
      • acquireString

        private java.lang.String acquireString()
                                        throws java.io.IOException,
                                               javax.servlet.jsp.JspException
        Throws:
        java.io.IOException
        javax.servlet.jsp.JspException
      • acquireReader

        private java.io.Reader acquireReader()
                                      throws java.io.IOException,
                                             javax.servlet.jsp.JspException
        Throws:
        java.io.IOException
        javax.servlet.jsp.JspException
      • targetUrl

        private java.lang.String targetUrl()
        Returns our URL (potentially with parameters)
      • stripSession

        public static java.lang.String stripSession​(java.lang.String url)
        Strips a servlet session ID from url. The session ID is encoded as a URL "path parameter" beginning with "jsessionid=". We thus remove anything we find between ";jsessionid=" (inclusive) and either EOS or a subsequent ';' (exclusive).