ServletResponse object and
passes it as an argument to the servlet's service method.
To send binary data in a MIME body response, use
the ServletOutputStream returned by getOutputStream.
To send character data, use the PrintWriter object
returned by getWriter. To mix binary and text data,
for example, to create a multipart response, use a
ServletOutputStream and manage the character sections
manually.
The charset for the MIME body response can be specified
explicitly using the setCharacterEncoding and
setContentType methods, or implicitly
using the setLocale method.
Explicit specifications take precedence over
implicit specifications. If no charset is specified, ISO-8859-1 will be
used. The setCharacterEncoding,
setContentType, or setLocale method must
be called before getWriter and before committing
the response for the character encoding to be used.
See the Internet RFCs such as RFC 2045 for more information on MIME. Protocols such as SMTP and HTTP define profiles of MIME, and those standards are still evolving.
ServletOutputStream
| Modifier and Type | Method and Description |
|---|---|
| public void | |
| public int | Returns: the actual buffer size usedReturns the actual buffer size used for the response. |
| public String | Returns: aString specifying the
name of the character encoding, for example, UTF-8Returns the name of the character encoding (MIME charset) used for the body sent in this response. |
| public String | Returns: aString specifying the
content type, for example, text/html; charset=UTF-8,
or nullReturns the content type used for the MIME body sent in this response. |
| public Locale | |
| public ServletOutputStream | Returns: aServletOutputStream for writing binary dataReturns a |
| public PrintWriter | Returns: aPrintWriter object that
can return character data to the clientReturns a |
| public boolean | Returns: a boolean indicating if the response has been committedReturns a boolean indicating if the response has been committed. |
| public void | |
| public void | resetBuffer()
Clears the content of the underlying buffer in the response without clearing headers or status code. |
| public void | setBufferSize(int
the preferred buffer size size)Sets the preferred buffer size for the body of the response. |
| public void | setCharacterEncoding(String
a String specifying only the character set
defined by IANA Character Sets
(http://www.iana.org/assignments/character-sets) charset)Sets the character encoding (MIME charset) of the response being sent to the client, for example, to UTF-8. |
| public void | setContentLength(int
an integer specifying the length of the
content being returned to the client; sets
the Content-Length header len)Sets the length of the content body in the response In HTTP servlets, this method sets the HTTP Content-Length header. |
| public void | setContentType(String
a type)String specifying the MIME
type of the contentSets the content type of the response being sent to the client, if the response has not been committed yet. |
| public void |
| flushBuffer | back to summary |
|---|---|
| public void flushBuffer() throws IOException Forces any content in the buffer to be written to the client. A call to this method automatically commits the response, meaning the status code and headers will be written.
| |
| getBufferSize | back to summary |
|---|---|
| public int getBufferSize() Returns the actual buffer size used for the response. If no buffering is used, this method returns 0.
| |
| getCharacterEncoding | back to summary |
|---|---|
| public String getCharacterEncoding() Returns the name of the character encoding (MIME charset)
used for the body sent in this response.
The character encoding may have been specified explicitly
using the See RFC 2047 (http://www.ietf.org/rfc/rfc2047.txt) for more information about character encoding and MIME.
| |
| getContentType | back to summary |
|---|---|
| public String getContentType() Returns the content type used for the MIME body
sent in this response. The content type proper must
have been specified using
| |
| getLocale | back to summary |
|---|---|
| public Locale getLocale() Returns the locale specified for this response
using the
| |
| getOutputStream | back to summary |
|---|---|
| public ServletOutputStream getOutputStream() throws IOException Returns a Calling flush() on the ServletOutputStream commits the response.
Either this method or
| |
| getWriter | back to summary |
|---|---|
| public PrintWriter getWriter() throws IOException Returns a Calling flush() on the Either this method or
| |
| isCommitted | back to summary |
|---|---|
| public boolean isCommitted() Returns a boolean indicating if the response has been committed. A commited response has already had its status code and headers written.
| |
| reset | back to summary |
|---|---|
| public void reset() Clears any data that exists in the buffer as well as the status code and
headers. If the response has been committed, this method throws an
| |
| resetBuffer | back to summary |
|---|---|
| public void resetBuffer() Clears the content of the underlying buffer in the response without
clearing headers or status code. If the
response has been committed, this method throws an
| |
| setBufferSize | back to summary |
|---|---|
| public void setBufferSize(int size) Sets the preferred buffer size for the body of the response.
The servlet container will use a buffer at least as large as
the size requested. The actual buffer size used can be found
using A larger buffer allows more content to be written before anything is actually sent, thus providing the servlet with more time to set appropriate status codes and headers. A smaller buffer decreases server memory load and allows the client to start receiving data more quickly. This method must be called before any response body content is
written; if content has been written or the response object has
been committed, this method throws an
| |
| setCharacterEncoding | back to summary |
|---|---|
| public void setCharacterEncoding(String charset) Sets the character encoding (MIME charset) of the response
being sent to the client, for example, to UTF-8.
If the character encoding has already been set by
This method can be called repeatedly to change the character
encoding.
This method has no effect if it is called after
Containers must communicate the character encoding used for
the servlet response's writer to the client if the protocol
provides a way for doing so. In the case of HTTP, the character
encoding is communicated as part of the
| |
| setContentLength | back to summary |
|---|---|
| public void setContentLength(int len) Sets the length of the content body in the response In HTTP servlets, this method sets the HTTP Content-Length header.
| |
| setContentType | back to summary |
|---|---|
| public void setContentType(String type) Sets the content type of the response being sent to
the client, if the response has not been committed yet.
The given content type may include a character encoding
specification, for example, This method may be called repeatedly to change content type and
character encoding.
This method has no effect if called after the response
has been committed. It does not set the response's character
encoding if it is called after Containers must communicate the content type and the character
encoding used for the servlet response's writer to the client if
the protocol provides a way for doing so. In the case of HTTP,
the
| |
| setLocale | back to summary |
|---|---|
| public void setLocale(Locale loc) Sets the locale of the response, if the response has not been
committed yet. It also sets the response's character encoding
appropriately for the locale, if the character encoding has not
been explicitly set using This method may be called repeatedly to change locale and
character encoding. The method has no effect if called after the
response has been committed. It does not set the response's
character encoding if it is called after Containers must communicate the locale and the character encoding
used for the servlet response's writer to the client if the protocol
provides a way for doing so. In the case of HTTP, the locale is
communicated via the
| |