Class JspSlingHttpServletResponseWrapper

java.lang.Object
javax.servlet.ServletResponseWrapper
javax.servlet.http.HttpServletResponseWrapper
org.apache.sling.api.wrappers.SlingHttpServletResponseWrapper
org.apache.sling.scripting.jsp.util.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

    Modifier and Type
    Method
    Description
    javax.servlet.ServletOutputStream
    Throws an IllegalStateException as this wrapper only supports writers.
    Returns the writer for this response wrapper.
    void
    Resets the buffer of the JspWriter underlying the writer of this instance.

    Methods inherited from class org.apache.sling.api.wrappers.SlingHttpServletResponseWrapper

    adaptTo, getSlingResponse

    Methods inherited from class javax.servlet.http.HttpServletResponseWrapper

    addCookie, addDateHeader, addHeader, addIntHeader, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURL, getHeader, getHeaderNames, getHeaders, getStatus, sendError, sendError, sendRedirect, setDateHeader, setHeader, setIntHeader, setStatus, setStatus

    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

    clone, equals, finalize, 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, sendError, sendError, sendRedirect, setDateHeader, setHeader, setIntHeader, setStatus, setStatus

    Methods inherited from interface javax.servlet.ServletResponse

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

    • 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:
  • Method Details

    • getWriter

      public 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