## javax.servlet.http
Class HttpServletResponseWrapper

    java.lang.Object
      |
      +--javax.servlet.ServletResponseWrapper
            |
            +--javax.servlet.http.HttpServletResponseWrapper

All Implemented Interfaces:
  HttpServletResponse, ServletResponse

public class HttpServletResponseWrapper
extends ServletResponseWrapper
implements HttpServletResponse

Provides a convenient implementation of the HttpServletResponse interface that can be subclassed by developers wishing to adapt the response from a Servlet. This class implements the Wrapper or Decorator pattern. Methods default to calling through to the wrapped response object.

Since:
  v 2.3
Version:
  $Version$
Author:
  Various
See Also:
  `HttpServletResponse`

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_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
`HttpServletResponseWrapper(HttpServletResponse response)` Constructs a response adaptor wrapping the given response.

Method Summary
`void` `addCookie(Cookie cookie)` The default behavior of this method is to call addCookie(Cookie cookie) on the wrapped response object.
`void` `addDateHeader(java.lang.String name, long date)` The default behavior of this method is to call addDateHeader(String name, long date) on the wrapped response object.
`void` `addHeader(java.lang.String name, java.lang.String value)` The default behavior of this method is to return addHeader(String name, String value) on the wrapped response object.
`void` `addIntHeader(java.lang.String name, int value)` The default behavior of this method is to call addIntHeader(String name, int value) on the wrapped response object.
`boolean` `containsHeader(java.lang.String name)` The default behavior of this method is to call containsHeader(String name) on the wrapped response object.
`java.lang.String` `encodeRedirectUrl(java.lang.String url)` The default behavior of this method is to return encodeRedirectUrl(String url) on the wrapped response object.
`java.lang.String` `encodeRedirectURL(java.lang.String url)` The default behavior of this method is to return encodeRedirectURL(String url) on the wrapped response object.
`java.lang.String` `encodeUrl(java.lang.String url)` The default behavior of this method is to call encodeUrl(String url) on the wrapped response object.
`java.lang.String` `encodeURL(java.lang.String url)` The default behavior of this method is to call encodeURL(String url) on the wrapped response object.
`void` `sendError(int sc)` The default behavior of this method is to call sendError(int sc) on the wrapped response object.
`void` `sendError(int sc, java.lang.String msg)` The default behavior of this method is to call sendError(int sc, String msg) on the wrapped response object.
`void` `sendRedirect(java.lang.String location)` The default behavior of this method is to return sendRedirect(String location) on the wrapped response object.
`void` `setDateHeader(java.lang.String name, long date)` The default behavior of this method is to call setDateHeader(String name, long date) on the wrapped response object.
`void` `setHeader(java.lang.String name, java.lang.String value)` The default behavior of this method is to return setHeader(String name, String value) on the wrapped response object.
`void` `setIntHeader(java.lang.String name, int value)` The default behavior of this method is to call setIntHeader(String name, int value) on the wrapped response object.
`void` `setStatus(int sc)` The default behavior of this method is to call setStatus(int sc) on the wrapped response object.
`void` `setStatus(int sc, java.lang.String sm)` Deprecated. As of version 2.1 of the Servlet spec. To set a status code use `setStatus(int)`, to send an error with a description use `sendError(int, String)`. Sets the status code and message for this response.

Methods inherited from class javax.servlet.ServletResponseWrapper
`flushBuffer, getBufferSize, getCharacterEncoding, getLocale, getOutputStream, getResponse, getWriter, isCommitted, reset, resetBuffer, setBufferSize, setContentLength, 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.ServletResponse
`flushBuffer, getBufferSize, getCharacterEncoding, getLocale, getOutputStream, getWriter, isCommitted, reset, resetBuffer, setBufferSize, setContentLength, setContentType, setLocale`

Constructor Detail

### HttpServletResponseWrapper

    public HttpServletResponseWrapper(HttpServletResponse response)

  Constructs a response adaptor wrapping the given response.

Throws:
  `java.lang.IllegalArgumentException` - if the response is null

Method Detail

### addCookie

    public void addCookie(Cookie cookie)

  The default behavior of this method is to call addCookie(Cookie cookie) on the wrapped response object.

  Specified by:
    `addCookie` in interface `HttpServletResponse`
  Parameters:
    `cookie` - the Cookie to return to the client

### containsHeader

    public boolean containsHeader(java.lang.String name)

  The default behavior of this method is to call containsHeader(String name) on the wrapped response object.

  Specified by:
    `containsHeader` in interface `HttpServletResponse`
  Parameters:
    `name` - the header name
  Returns:
    `true` if the named response header has already been set; `false` otherwise

### encodeURL

    public java.lang.String encodeURL(java.lang.String url)

  The default behavior of this method is to call encodeURL(String url) on the wrapped response object.

  Specified by:
    `encodeURL` in interface `HttpServletResponse`
  Parameters:
    `url` - the url to be encoded.
  Returns:
    the encoded URL if encoding is needed; the unchanged URL otherwise.

### encodeRedirectURL

    public java.lang.String encodeRedirectURL(java.lang.String url)

  The default behavior of this method is to return encodeRedirectURL(String url) on the wrapped response object.

  Specified by:
    `encodeRedirectURL` in interface `HttpServletResponse`
  Parameters:
    `url` - the url to be encoded.
  Returns:
    the encoded URL if encoding is needed; the unchanged URL otherwise.
  See Also:
    `HttpServletResponse.sendRedirect(java.lang.String)`, `HttpServletResponse.encodeUrl(java.lang.String)`

### encodeUrl

    public java.lang.String encodeUrl(java.lang.String url)

  The default behavior of this method is to call encodeUrl(String url) on the wrapped response object.

  Specified by:
    `encodeUrl` in interface `HttpServletResponse`
  Parameters:
    `url` - the url to be encoded.
  Returns:
    the encoded URL if encoding is needed; the unchanged URL otherwise.

### encodeRedirectUrl

    public java.lang.String encodeRedirectUrl(java.lang.String url)

  The default behavior of this method is to return encodeRedirectUrl(String url) on the wrapped response object.

  Specified by:
    `encodeRedirectUrl` in interface `HttpServletResponse`
  Parameters:
    `url` - the url to be encoded.
  Returns:
    the encoded URL if encoding is needed; the unchanged URL otherwise.

### sendError

    public void sendError(int sc,
                          java.lang.String msg)
                   throws java.io.IOException

  The default behavior of this method is to call sendError(int sc, String msg) on the wrapped response object.

  Specified by:
    `sendError` in interface `HttpServletResponse`
  Parameters:
    `sc` - the error status code
    `msg` - the descriptive message
  Throws:
    `java.io.IOException` - If an input or output exception occurs

### sendError

    public void sendError(int sc)
                   throws java.io.IOException

  The default behavior of this method is to call sendError(int sc) on the wrapped response object.

  Specified by:
    `sendError` in interface `HttpServletResponse`
  Parameters:
    `sc` - the error status code
  Throws:
    `java.io.IOException` - If an input or output exception occurs

### sendRedirect

    public void sendRedirect(java.lang.String location)
                      throws java.io.IOException

  The default behavior of this method is to return sendRedirect(String location) on the wrapped response object.

  Specified by:
    `sendRedirect` in interface `HttpServletResponse`
  Parameters:
    `location` - the redirect location URL
  Throws:
    `java.io.IOException` - If an input or output exception occurs

### setDateHeader

    public void setDateHeader(java.lang.String name,
                              long date)

  The default behavior of this method is to call setDateHeader(String name, long date) on the wrapped response object.

  Specified by:
    `setDateHeader` in interface `HttpServletResponse`
  Parameters:
    `name` - the name of the header to set
  See Also:
    `HttpServletResponse.containsHeader(java.lang.String)`, `HttpServletResponse.addDateHeader(java.lang.String, long)`

### addDateHeader

    public void addDateHeader(java.lang.String name,
                              long date)

  The default behavior of this method is to call addDateHeader(String name, long date) on the wrapped response object.

  Specified by:
    `addDateHeader` in interface `HttpServletResponse`
  Parameters:
    `name` - the name of the header to set
  See Also:
    `HttpServletResponse.setDateHeader(java.lang.String, long)`

### setHeader

    public void setHeader(java.lang.String name,
                          java.lang.String value)

  The default behavior of this method is to return setHeader(String name, String value) on the wrapped response object.

  Specified by:
    `setHeader` in interface `HttpServletResponse`
  Parameters:
    `name` - the name of the header
    `value` - the header value
  See Also:
    `HttpServletResponse.containsHeader(java.lang.String)`, `HttpServletResponse.addHeader(java.lang.String, java.lang.String)`

### addHeader

    public void addHeader(java.lang.String name,
                          java.lang.String value)

  The default behavior of this method is to return addHeader(String name, String value) on the wrapped response object.

  Specified by:
    `addHeader` in interface `HttpServletResponse`
  Parameters:
    `name` - the name of the header
    `value` - the additional header value
  See Also:
    `HttpServletResponse.setHeader(java.lang.String, java.lang.String)`

### setIntHeader

    public void setIntHeader(java.lang.String name,
                             int value)

  The default behavior of this method is to call setIntHeader(String name, int value) on the wrapped response object.

  Specified by:
    `setIntHeader` in interface `HttpServletResponse`
  Parameters:
    `name` - the name of the header
    `value` - the assigned integer value
  See Also:
    `HttpServletResponse.containsHeader(java.lang.String)`, `HttpServletResponse.addIntHeader(java.lang.String, int)`

### addIntHeader

    public void addIntHeader(java.lang.String name,
                             int value)

  The default behavior of this method is to call addIntHeader(String name, int value) on the wrapped response object.

  Specified by:
    `addIntHeader` in interface `HttpServletResponse`
  Parameters:
    `name` - the name of the header
    `value` - the assigned integer value
  See Also:
    `HttpServletResponse.setIntHeader(java.lang.String, int)`

### setStatus

    public void setStatus(int sc)

  The default behavior of this method is to call setStatus(int sc) on the wrapped response object.

  Specified by:
    `setStatus` in interface `HttpServletResponse`
  Parameters:
    `sc` - the status code
  See Also:
    `HttpServletResponse.sendError(int, java.lang.String)`

### setStatus

    public void setStatus(int sc,
                          java.lang.String sm)

  Deprecated. As of version 2.1 of the Servlet spec. To set a status code use `setStatus(int)`, to send an error with a description use `sendError(int, String)`. Sets the status code and message for this response.

  The default behavior of this method is to call setStatus(int sc, String sm) on the wrapped response object.

  Specified by:
    `setStatus` in interface `HttpServletResponse`
  Parameters:
    `sc` - the status code
    `sm` - the status message

Copyright © 2000 Mortbay Consulting Pty. Ltd. All Rights Reserved.