Class JspSlingHttpServletResponseWrapper

  • All Implemented Interfaces:
    javax.servlet.http.HttpServletResponse, javax.servlet.ServletResponse, Adaptable, SlingHttpServletResponse

    public class JspSlingHttpServletResponseWrapper
    extends SlingHttpServletResponseWrapper
    The JspSlingHttpServletResponseWrapper class may be used by tag library implementors to create a RenderResponse object which wraps the writer of the response of a given page context.

    Instances of this class only support writers. Trying to get an OutputStream always results in an IllegalStateException. This is the same behaviour as implemented by response wrappers of Apache Jasper.

    • Field Summary

      • Fields inherited from interface javax.servlet.http.HttpServletResponse

        SC_ACCEPTED, SC_BAD_GATEWAY, SC_BAD_REQUEST, SC_CONFLICT, SC_CONTINUE, SC_CREATED, SC_EXPECTATION_FAILED, SC_FORBIDDEN, SC_FOUND, SC_GATEWAY_TIMEOUT, SC_GONE, SC_HTTP_VERSION_NOT_SUPPORTED, SC_INTERNAL_SERVER_ERROR, SC_LENGTH_REQUIRED, SC_METHOD_NOT_ALLOWED, SC_MOVED_PERMANENTLY, SC_MOVED_TEMPORARILY, SC_MULTIPLE_CHOICES, SC_NO_CONTENT, SC_NON_AUTHORITATIVE_INFORMATION, SC_NOT_ACCEPTABLE, SC_NOT_FOUND, SC_NOT_IMPLEMENTED, SC_NOT_MODIFIED, SC_OK, SC_PARTIAL_CONTENT, SC_PAYMENT_REQUIRED, SC_PRECONDITION_FAILED, SC_PROXY_AUTHENTICATION_REQUIRED, SC_REQUEST_ENTITY_TOO_LARGE, SC_REQUEST_TIMEOUT, SC_REQUEST_URI_TOO_LONG, SC_REQUESTED_RANGE_NOT_SATISFIABLE, SC_RESET_CONTENT, SC_SEE_OTHER, SC_SERVICE_UNAVAILABLE, SC_SWITCHING_PROTOCOLS, SC_TEMPORARY_REDIRECT, SC_UNAUTHORIZED, SC_UNSUPPORTED_MEDIA_TYPE, SC_USE_PROXY
    • Constructor Summary

      Constructors 
      Constructor Description
      JspSlingHttpServletResponseWrapper​(javax.servlet.jsp.PageContext pageContext)
      Creates an instance of this response wrapper for the given pageContext.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      javax.servlet.ServletOutputStream getOutputStream()
      Throws an IllegalStateException as this wrapper only supports writers.
      java.io.PrintWriter getWriter()
      Returns the writer for this response wrapper.
      void resetBuffer()
      Resets the buffer of the JspWriter underlying the writer of this instance.
      • Methods inherited from class javax.servlet.http.HttpServletResponseWrapper

        addCookie, addDateHeader, addHeader, addIntHeader, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURL, getHeader, getHeaderNames, getHeaders, getStatus, getTrailerFields, sendError, sendError, sendRedirect, setDateHeader, setHeader, setIntHeader, setStatus, setStatus, setTrailerFields
      • Methods inherited from class javax.servlet.ServletResponseWrapper

        flushBuffer, getBufferSize, getCharacterEncoding, getContentType, getLocale, getResponse, isCommitted, isWrapperFor, isWrapperFor, reset, setBufferSize, setCharacterEncoding, setContentLength, setContentLengthLong, setContentType, setLocale, setResponse
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface javax.servlet.http.HttpServletResponse

        addCookie, addDateHeader, addHeader, addIntHeader, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURL, getHeader, getHeaderNames, getHeaders, getStatus, getTrailerFields, sendError, sendError, sendRedirect, setDateHeader, setHeader, setIntHeader, setStatus, setStatus, setTrailerFields
      • Methods inherited from interface javax.servlet.ServletResponse

        flushBuffer, getBufferSize, getCharacterEncoding, getContentType, getLocale, isCommitted, reset, setBufferSize, setCharacterEncoding, setContentLength, setContentLengthLong, setContentType, setLocale
    • Constructor Detail

      • JspSlingHttpServletResponseWrapper

        public JspSlingHttpServletResponseWrapper​(javax.servlet.jsp.PageContext pageContext)
        Creates an instance of this response wrapper for the given pageContext. The original JspWriter is retrieved from the page context calling the PageContext.getOut() method. The delegatee RenderResponse is retrieved from the page context by calling the TagUtil.getResponse(PageContext) method.
        Parameters:
        pageContext - The PageContext to use to get the original output stream and the delegatee response.
        See Also:
        TagUtil.getResponse(PageContext)
    • Method Detail

      • getWriter

        public java.io.PrintWriter getWriter()
        Returns the writer for this response wrapper.
        Specified by:
        getWriter in interface javax.servlet.ServletResponse
        Overrides:
        getWriter in class javax.servlet.ServletResponseWrapper
      • getOutputStream

        public javax.servlet.ServletOutputStream getOutputStream()
        Throws an IllegalStateException as this wrapper only supports writers.
        Specified by:
        getOutputStream in interface javax.servlet.ServletResponse
        Overrides:
        getOutputStream in class javax.servlet.ServletResponseWrapper
      • resetBuffer

        public void resetBuffer()
        Resets the buffer of the JspWriter underlying the writer of this instance.
        Specified by:
        resetBuffer in interface javax.servlet.ServletResponse
        Overrides:
        resetBuffer in class javax.servlet.ServletResponseWrapper