Class HttpServletResponseProxy
- java.lang.Object
-
- com.ibm.websphere.servlet.response.HttpServletResponseProxy
-
- All Implemented Interfaces:
javax.servlet.http.HttpServletResponse,javax.servlet.ServletResponse
public abstract class HttpServletResponseProxy extends java.lang.Object implements javax.servlet.http.HttpServletResponseDeprecated.since WAS V6.0 Use the HttpServletResponseWrapper class instead. Proxies function invocations to an underlying HttpServletResponse. Subclasses of this class can be created that overload or enhance the functionality of a server-provided HttpServletResponse.Using the proxied response:
- Subclass this class and overload any desired functions.
- During the servlet's service method, create an instance of the enhanced response using the original response from the server as the proxied response.
- Forward the enhanced response to another servlet for processing instead of the original response that was provided by the server.
Sample subclass (overloads the response's OutputStream)
//The data written to this response will be saved to the specified file. public class FileOutputResponse extends HttpServletResponseProxy{ private HttpServletResponse _response; private File _file; public FileOutputResponse(File f, HttpServletResponse resp){ _file = f; _response = resp; } protected HttpServletResponse getProxiedHttpServletResponse(){ return _response; } //overload response functionality public ServletOutputStream getOutputStream() throws IOException{ return new ServletOutputStreamAdapter(new FileOutputStream(_file)); } public PrintWriter getWriter() throws IOException{ return new PrintWriter(getOutputStream()); } }Using the enhanced response subclass transparently in a servlet
//This servlet will store the response of another servlet to a file. public class SaveResponseToFileServlet extends HttpServlet{ public void service(HttpServletRequest req, HttpServletResponse resp){ resp = new FileOutputResponse(req, new File("/tmp/response.txt")); //store the response of SnoopServlet to the response.txt file. getServletContext().getRequestDispatcher("/servlet/SnoopServlet").forward(req, resp); } }
-
-
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 HttpServletResponseProxy()Deprecated.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidaddCookie(javax.servlet.http.Cookie cookie)Deprecated.voidaddDateHeader(java.lang.String name, long date)Deprecated.voidaddHeader(java.lang.String name, java.lang.String value)Deprecated.voidaddIntHeader(java.lang.String name, int value)Deprecated.booleancontainsHeader(java.lang.String name)Deprecated.java.lang.StringencodeRedirectUrl(java.lang.String url)Deprecated.java.lang.StringencodeRedirectURL(java.lang.String url)Deprecated.java.lang.StringencodeUrl(java.lang.String url)Deprecated.java.lang.StringencodeURL(java.lang.String url)Deprecated.voidflushBuffer()Deprecated.intgetBufferSize()Deprecated.java.lang.StringgetCharacterEncoding()Deprecated.java.util.LocalegetLocale()Deprecated.javax.servlet.ServletOutputStreamgetOutputStream()Deprecated.javax.servlet.ServletResponsegetResponse()Deprecated.java.io.PrintWritergetWriter()Deprecated.booleanisCommitted()Deprecated.voidreset()Deprecated.voidresetBuffer()Deprecated.Clears the content of the underlying buffer in the response without clearing headers or status code.voidsendError(int sc)Deprecated.voidsendError(int sc, java.lang.String msg)Deprecated.voidsendRedirect(java.lang.String location)Deprecated.voidsetBufferSize(int size)Deprecated.voidsetContentLength(int len)Deprecated.voidsetContentType(java.lang.String type)Deprecated.voidsetDateHeader(java.lang.String name, long date)Deprecated.voidsetHeader(java.lang.String name, java.lang.String value)Deprecated.voidsetIntHeader(java.lang.String name, int value)Deprecated.voidsetLocale(java.util.Locale loc)Deprecated.voidsetStatus(int sc)Deprecated.voidsetStatus(int sc, java.lang.String sm)Deprecated.-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
-
-
Method Detail
-
addCookie
public void addCookie(javax.servlet.http.Cookie cookie)
Deprecated.- Specified by:
addCookiein interfacejavax.servlet.http.HttpServletResponse
-
containsHeader
public boolean containsHeader(java.lang.String name)
Deprecated.- Specified by:
containsHeaderin interfacejavax.servlet.http.HttpServletResponse
-
encodeRedirectUrl
public java.lang.String encodeRedirectUrl(java.lang.String url)
Deprecated.- Specified by:
encodeRedirectUrlin interfacejavax.servlet.http.HttpServletResponse
-
encodeURL
public java.lang.String encodeURL(java.lang.String url)
Deprecated.- Specified by:
encodeURLin interfacejavax.servlet.http.HttpServletResponse
-
encodeRedirectURL
public java.lang.String encodeRedirectURL(java.lang.String url)
Deprecated.- Specified by:
encodeRedirectURLin interfacejavax.servlet.http.HttpServletResponse
-
encodeUrl
public java.lang.String encodeUrl(java.lang.String url)
Deprecated.- Specified by:
encodeUrlin interfacejavax.servlet.http.HttpServletResponse
-
setDateHeader
public void setDateHeader(java.lang.String name, long date)Deprecated.- Specified by:
setDateHeaderin interfacejavax.servlet.http.HttpServletResponse
-
sendError
public void sendError(int sc) throws java.io.IOExceptionDeprecated.- Specified by:
sendErrorin interfacejavax.servlet.http.HttpServletResponse- Throws:
java.io.IOException
-
sendError
public void sendError(int sc, java.lang.String msg) throws java.io.IOExceptionDeprecated.- Specified by:
sendErrorin interfacejavax.servlet.http.HttpServletResponse- Throws:
java.io.IOException
-
sendRedirect
public void sendRedirect(java.lang.String location) throws java.io.IOExceptionDeprecated.- Specified by:
sendRedirectin interfacejavax.servlet.http.HttpServletResponse- Throws:
java.io.IOException
-
setStatus
public void setStatus(int sc)
Deprecated.- Specified by:
setStatusin interfacejavax.servlet.http.HttpServletResponse
-
setStatus
public void setStatus(int sc, java.lang.String sm)Deprecated.- Specified by:
setStatusin interfacejavax.servlet.http.HttpServletResponse
-
setHeader
public void setHeader(java.lang.String name, java.lang.String value)Deprecated.- Specified by:
setHeaderin interfacejavax.servlet.http.HttpServletResponse
-
setIntHeader
public void setIntHeader(java.lang.String name, int value)Deprecated.- Specified by:
setIntHeaderin interfacejavax.servlet.http.HttpServletResponse
-
addIntHeader
public void addIntHeader(java.lang.String name, int value)Deprecated.- Specified by:
addIntHeaderin interfacejavax.servlet.http.HttpServletResponse
-
addHeader
public void addHeader(java.lang.String name, java.lang.String value)Deprecated.- Specified by:
addHeaderin interfacejavax.servlet.http.HttpServletResponse
-
addDateHeader
public void addDateHeader(java.lang.String name, long date)Deprecated.- Specified by:
addDateHeaderin interfacejavax.servlet.http.HttpServletResponse
-
getCharacterEncoding
public java.lang.String getCharacterEncoding()
Deprecated.- Specified by:
getCharacterEncodingin interfacejavax.servlet.ServletResponse
-
getOutputStream
public javax.servlet.ServletOutputStream getOutputStream() throws java.io.IOExceptionDeprecated.- Specified by:
getOutputStreamin interfacejavax.servlet.ServletResponse- Throws:
java.io.IOException
-
getWriter
public java.io.PrintWriter getWriter() throws java.io.IOExceptionDeprecated.- Specified by:
getWriterin interfacejavax.servlet.ServletResponse- Throws:
java.io.IOException
-
setContentLength
public void setContentLength(int len)
Deprecated.- Specified by:
setContentLengthin interfacejavax.servlet.ServletResponse
-
setContentType
public void setContentType(java.lang.String type)
Deprecated.- Specified by:
setContentTypein interfacejavax.servlet.ServletResponse
-
setBufferSize
public void setBufferSize(int size)
Deprecated.- Specified by:
setBufferSizein interfacejavax.servlet.ServletResponse
-
getBufferSize
public int getBufferSize()
Deprecated.- Specified by:
getBufferSizein interfacejavax.servlet.ServletResponse
-
flushBuffer
public void flushBuffer() throws java.io.IOExceptionDeprecated.- Specified by:
flushBufferin interfacejavax.servlet.ServletResponse- Throws:
java.io.IOException
-
isCommitted
public boolean isCommitted()
Deprecated.- Specified by:
isCommittedin interfacejavax.servlet.ServletResponse
-
reset
public void reset()
Deprecated.- Specified by:
resetin interfacejavax.servlet.ServletResponse
-
setLocale
public void setLocale(java.util.Locale loc)
Deprecated.- Specified by:
setLocalein interfacejavax.servlet.ServletResponse
-
getLocale
public java.util.Locale getLocale()
Deprecated.- Specified by:
getLocalein interfacejavax.servlet.ServletResponse
-
resetBuffer
public void resetBuffer()
Deprecated.Clears the content of the underlying buffer in the response without clearing headers or status code.- Specified by:
resetBufferin interfacejavax.servlet.ServletResponse- Throws:
java.lang.IllegalStateException- if the response has already been committed- Since:
- 2.3
-
getResponse
public javax.servlet.ServletResponse getResponse()
Deprecated.
-
-