blob: 07b6e1d2d3058d47420c745164167acca320dfb6 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>ServletResponse</title>
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ServletResponse";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../javax/servlet/ServletRequestWrapper.html" title="class in javax.servlet"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../javax/servlet/ServletResponseWrapper.html" title="class in javax.servlet"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?javax/servlet/ServletResponse.html" target="_top">Frames</a></li>
<li><a href="ServletResponse.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">javax.servlet</div>
<h2 title="Interface ServletResponse" class="title">Interface ServletResponse</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Known Subinterfaces:</dt>
<dd><a href="../../javax/servlet/http/HttpServletResponse.html" title="interface in javax.servlet.http">HttpServletResponse</a></dd>
</dl>
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../javax/servlet/http/HttpServletResponseWrapper.html" title="class in javax.servlet.http">HttpServletResponseWrapper</a>, <a href="../../javax/servlet/ServletResponseWrapper.html" title="class in javax.servlet">ServletResponseWrapper</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">ServletResponse</span></pre>
<div class="block">Defines an object to assist a servlet in sending a response to the client.
The servlet container creates a <code>ServletResponse</code> object and
passes it as an argument to the servlet's <code>service</code> method.
<p>To send binary data in a MIME body response, use
the <a href="../../javax/servlet/ServletOutputStream.html" title="class in javax.servlet"><code>ServletOutputStream</code></a> returned by <a href="../../javax/servlet/ServletResponse.html#getOutputStream--"><code>getOutputStream()</code></a>.
To send character data, use the <code>PrintWriter</code> object
returned by <a href="../../javax/servlet/ServletResponse.html#getWriter--"><code>getWriter()</code></a>. To mix binary and text data,
for example, to create a multipart response, use a
<code>ServletOutputStream</code> and manage the character sections
manually.
<p>The charset for the MIME body response can be specified explicitly
using any of the following techniques: per request, per web-app (using
<a href="../../javax/servlet/ServletContext.html#setRequestCharacterEncoding-java.lang.String-"><code>ServletContext.setRequestCharacterEncoding(java.lang.String)</code></a>, deployment descriptor),
and per container (for all web applications deployed in that container,
using vendor specific configuration).
If multiple of the preceding techniques have been employed, the priority is
the order listed.
For per request, the charset for the response can be specified explicitly
using the <a href="../../javax/servlet/ServletResponse.html#setCharacterEncoding-java.lang.String-"><code>setCharacterEncoding(java.lang.String)</code></a> and <a href="../../javax/servlet/ServletResponse.html#setContentType-java.lang.String-"><code>setContentType(java.lang.String)</code></a> methods,
or implicitly using the <a href="../../javax/servlet/ServletResponse.html#setLocale-java.util.Locale-"><code>setLocale(java.util.Locale)</code></a> method.
Explicit specifications take precedence over implicit specifications.
If no charset is explicitly specified, ISO-8859-1 will be used.
The <code>setCharacterEncoding</code>,
<code>setContentType</code>, or <code>setLocale</code> method must
be called before <code>getWriter</code> and before committing
the response for the character encoding to be used.
<p>See the Internet RFCs such as
<a href="http://www.ietf.org/rfc/rfc2045.txt">
RFC 2045</a> for more information on MIME. Protocols such as SMTP
and HTTP define profiles of MIME, and those standards
are still evolving.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../javax/servlet/ServletOutputStream.html" title="class in javax.servlet"><code>ServletOutputStream</code></a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#flushBuffer--">flushBuffer</a></span>()</code>
<div class="block">Forces any content in the buffer to be written to the client.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#getBufferSize--">getBufferSize</a></span>()</code>
<div class="block">Returns the actual buffer size used for the response.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#getCharacterEncoding--">getCharacterEncoding</a></span>()</code>
<div class="block">Returns the name of the character encoding (MIME charset)
used for the body sent in this response.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#getContentType--">getContentType</a></span>()</code>
<div class="block">Returns the content type used for the MIME body
sent in this response.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>java.util.Locale</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#getLocale--">getLocale</a></span>()</code>
<div class="block">Returns the locale specified for this response
using the <a href="../../javax/servlet/ServletResponse.html#setLocale-java.util.Locale-"><code>setLocale(java.util.Locale)</code></a> method.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../javax/servlet/ServletOutputStream.html" title="class in javax.servlet">ServletOutputStream</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#getOutputStream--">getOutputStream</a></span>()</code>
<div class="block">Returns a <a href="../../javax/servlet/ServletOutputStream.html" title="class in javax.servlet"><code>ServletOutputStream</code></a> suitable for writing binary
data in the response.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>java.io.PrintWriter</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#getWriter--">getWriter</a></span>()</code>
<div class="block">Returns a <code>PrintWriter</code> object that
can send character text to the client.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#isCommitted--">isCommitted</a></span>()</code>
<div class="block">Returns a boolean indicating if the response has been
committed.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#reset--">reset</a></span>()</code>
<div class="block">Clears any data that exists in the buffer as well as the status code,
headers.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#resetBuffer--">resetBuffer</a></span>()</code>
<div class="block">Clears the content of the underlying buffer in the response without
clearing headers or status code.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#setBufferSize-int-">setBufferSize</a></span>(int&nbsp;size)</code>
<div class="block">Sets the preferred buffer size for the body of the response.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#setCharacterEncoding-java.lang.String-">setCharacterEncoding</a></span>(java.lang.String&nbsp;charset)</code>
<div class="block">Sets the character encoding (MIME charset) of the response
being sent to the client, for example, to UTF-8.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#setContentLength-int-">setContentLength</a></span>(int&nbsp;len)</code>
<div class="block">Sets the length of the content body in the response
In HTTP servlets, this method sets the HTTP Content-Length header.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#setContentLengthLong-long-">setContentLengthLong</a></span>(long&nbsp;len)</code>
<div class="block">Sets the length of the content body in the response
In HTTP servlets, this method sets the HTTP Content-Length header.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#setContentType-java.lang.String-">setContentType</a></span>(java.lang.String&nbsp;type)</code>
<div class="block">Sets the content type of the response being sent to
the client, if the response has not been committed yet.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/servlet/ServletResponse.html#setLocale-java.util.Locale-">setLocale</a></span>(java.util.Locale&nbsp;loc)</code>
<div class="block">Sets the locale of the response, if the response has not been
committed yet.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getCharacterEncoding--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCharacterEncoding</h4>
<pre>java.lang.String&nbsp;getCharacterEncoding()</pre>
<div class="block">Returns the name of the character encoding (MIME charset)
used for the body sent in this response.
The following methods for specifying the response character encoding are
consulted, in decreasing order of priority: per request, perweb-app
(using <a href="../../javax/servlet/ServletContext.html#setResponseCharacterEncoding-java.lang.String-"><code>ServletContext.setResponseCharacterEncoding(java.lang.String)</code></a>, deployment
descriptor), and per container (for all web applications deployed in
that container, using vendor specific configuration).
The first one of these methods that yields a result is returned.
Per-request, the charset for the response can be specified explicitly
using the <code>setCharacterEncoding</code> and <code>setContentType</code>
methods, or implicitly using the setLocale(java.util.Locale) method.
Explicit specifications take precedence over implicit specifications.
Calls made to these methods after <code>getWriter</code> has been
called or after the response has been committed have no
effect on the character encoding. If no character encoding
has been specified, <code>ISO-8859-1</code> is returned.
<p>See RFC 2047 (http://www.ietf.org/rfc/rfc2047.txt)
for more information about character encoding and MIME.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>String</code> specifying the name of
the character encoding, for example, <code>UTF-8</code></dd>
</dl>
</li>
</ul>
<a name="getContentType--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getContentType</h4>
<pre>java.lang.String&nbsp;getContentType()</pre>
<div class="block">Returns the content type used for the MIME body
sent in this response. The content type proper must
have been specified using <a href="../../javax/servlet/ServletResponse.html#setContentType-java.lang.String-"><code>setContentType(java.lang.String)</code></a>
before the response is committed. If no content type
has been specified, this method returns null.
If a content type has been specified, and a
character encoding has been explicitly or implicitly
specified as described in <a href="../../javax/servlet/ServletResponse.html#getCharacterEncoding--"><code>getCharacterEncoding()</code></a>
or <a href="../../javax/servlet/ServletResponse.html#getWriter--"><code>getWriter()</code></a> has been called,
the charset parameter is included in the string returned.
If no character encoding has been specified, the
charset parameter is omitted.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>String</code> specifying the content type,
for example, <code>text/html; charset=UTF-8</code>, or null</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>Servlet 2.4</dd>
</dl>
</li>
</ul>
<a name="getOutputStream--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOutputStream</h4>
<pre><a href="../../javax/servlet/ServletOutputStream.html" title="class in javax.servlet">ServletOutputStream</a>&nbsp;getOutputStream()
throws java.io.IOException</pre>
<div class="block">Returns a <a href="../../javax/servlet/ServletOutputStream.html" title="class in javax.servlet"><code>ServletOutputStream</code></a> suitable for writing binary
data in the response. The servlet container does not encode the
binary data.
<p> Calling flush() on the ServletOutputStream commits the response.
Either this method or <a href="../../javax/servlet/ServletResponse.html#getWriter--"><code>getWriter()</code></a> may
be called to write the body, not both, except when <a href="../../javax/servlet/ServletResponse.html#reset--"><code>reset()</code></a>
has been called.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <a href="../../javax/servlet/ServletOutputStream.html" title="class in javax.servlet"><code>ServletOutputStream</code></a> for writing binary data</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalStateException</code> - if the <code>getWriter</code> method
has been called on this response</dd>
<dd><code>java.io.IOException</code> - if an input or output exception occurred</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../javax/servlet/ServletResponse.html#getWriter--"><code>getWriter()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#reset--"><code>reset()</code></a></dd>
</dl>
</li>
</ul>
<a name="getWriter--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getWriter</h4>
<pre>java.io.PrintWriter&nbsp;getWriter()
throws java.io.IOException</pre>
<div class="block">Returns a <code>PrintWriter</code> object that
can send character text to the client.
The <code>PrintWriter</code> uses the character
encoding returned by <a href="../../javax/servlet/ServletResponse.html#getCharacterEncoding--"><code>getCharacterEncoding()</code></a>.
If the response's character encoding has not been
specified as described in <code>getCharacterEncoding</code>
(i.e., the method just returns the default value
<code>ISO-8859-1</code>), <code>getWriter</code>
updates it to <code>ISO-8859-1</code>.
<p>Calling flush() on the <code>PrintWriter</code>
commits the response.
<p>Either this method or <a href="../../javax/servlet/ServletResponse.html#getOutputStream--"><code>getOutputStream()</code></a> may be called
to write the body, not both, except when <a href="../../javax/servlet/ServletResponse.html#reset--"><code>reset()</code></a>
has been called.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>PrintWriter</code> object that
can return character data to the client</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.UnsupportedEncodingException</code> - if the character encoding returned
by <code>getCharacterEncoding</code> cannot be used</dd>
<dd><code>java.lang.IllegalStateException</code> - if the <code>getOutputStream</code>
method has already been called for this response object</dd>
<dd><code>java.io.IOException</code> - if an input or output exception occurred</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../javax/servlet/ServletResponse.html#getOutputStream--"><code>getOutputStream()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#setCharacterEncoding-java.lang.String-"><code>setCharacterEncoding(java.lang.String)</code></a>,
<a href="../../javax/servlet/ServletResponse.html#reset--"><code>reset()</code></a></dd>
</dl>
</li>
</ul>
<a name="setCharacterEncoding-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCharacterEncoding</h4>
<pre>void&nbsp;setCharacterEncoding(java.lang.String&nbsp;charset)</pre>
<div class="block">Sets the character encoding (MIME charset) of the response
being sent to the client, for example, to UTF-8.
If the response character encoding has already been set by the
<a href="../../javax/servlet/ServletContext.html#setResponseCharacterEncoding-java.lang.String-"><code>ServletContext.setResponseCharacterEncoding(java.lang.String)</code></a>,
deployment descriptor, or using the setContentType() or setLocale()
methods, the value set in this method overrides any of those values.
Calling <a href="../../javax/servlet/ServletResponse.html#setContentType-java.lang.String-"><code>setContentType(java.lang.String)</code></a> with the <code>String</code>
of <code>text/html</code> and calling
this method with the <code>String</code> of <code>UTF-8</code>
is equivalent with calling
<code>setContentType</code> with the <code>String</code> of
<code>text/html; charset=UTF-8</code>.
<p>This method can be called repeatedly to change the character
encoding.
This method has no effect if it is called after
<code>getWriter</code> has been
called or after the response has been committed.
<p>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 <code>Content-Type</code>
header for text media types. Note that the character encoding
cannot be communicated via HTTP headers if the servlet does not
specify a content type; however, it is still used to encode text
written via the servlet response's writer.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>charset</code> - a String specifying only the character set
defined by IANA Character Sets
(http://www.iana.org/assignments/character-sets)</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>Servlet 2.4</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../javax/servlet/ServletResponse.html#setContentType-java.lang.String-"><code>setContentType(java.lang.String)</code></a>,
<a href="../../javax/servlet/ServletResponse.html#setLocale-java.util.Locale-"><code>setLocale(java.util.Locale)</code></a></dd>
</dl>
</li>
</ul>
<a name="setContentLength-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setContentLength</h4>
<pre>void&nbsp;setContentLength(int&nbsp;len)</pre>
<div class="block">Sets the length of the content body in the response
In HTTP servlets, this method sets the HTTP Content-Length header.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>len</code> - an integer specifying the length of the
content being returned to the client; sets the Content-Length header</dd>
</dl>
</li>
</ul>
<a name="setContentLengthLong-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setContentLengthLong</h4>
<pre>void&nbsp;setContentLengthLong(long&nbsp;len)</pre>
<div class="block">Sets the length of the content body in the response
In HTTP servlets, this method sets the HTTP Content-Length header.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>len</code> - a long specifying the length of the
content being returned to the client; sets the Content-Length header</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>Servlet 3.1</dd>
</dl>
</li>
</ul>
<a name="setContentType-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setContentType</h4>
<pre>void&nbsp;setContentType(java.lang.String&nbsp;type)</pre>
<div class="block">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, <code>text/html;charset=UTF-8</code>.
The response's character encoding is only set from the given
content type if this method is called before <code>getWriter</code>
is called.
<p>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 <code>getWriter</code>
has been called or after the response has been committed.
<p>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 <code>Content-Type</code> header is used.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>type</code> - a <code>String</code> specifying the MIME
type of the content</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../javax/servlet/ServletResponse.html#setLocale-java.util.Locale-"><code>setLocale(java.util.Locale)</code></a>,
<a href="../../javax/servlet/ServletResponse.html#setCharacterEncoding-java.lang.String-"><code>setCharacterEncoding(java.lang.String)</code></a>,
<a href="../../javax/servlet/ServletResponse.html#getOutputStream--"><code>getOutputStream()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#getWriter--"><code>getWriter()</code></a></dd>
</dl>
</li>
</ul>
<a name="setBufferSize-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBufferSize</h4>
<pre>void&nbsp;setBufferSize(int&nbsp;size)</pre>
<div class="block">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 <code>getBufferSize</code>.
<p>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.
<p>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
<code>IllegalStateException</code>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>size</code> - the preferred buffer size</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalStateException</code> - if this method is called after
content has been written</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../javax/servlet/ServletResponse.html#getBufferSize--"><code>getBufferSize()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#flushBuffer--"><code>flushBuffer()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#isCommitted--"><code>isCommitted()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#reset--"><code>reset()</code></a></dd>
</dl>
</li>
</ul>
<a name="getBufferSize--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBufferSize</h4>
<pre>int&nbsp;getBufferSize()</pre>
<div class="block">Returns the actual buffer size used for the response. If no buffering
is used, this method returns 0.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the actual buffer size used</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../javax/servlet/ServletResponse.html#setBufferSize-int-"><code>setBufferSize(int)</code></a>,
<a href="../../javax/servlet/ServletResponse.html#flushBuffer--"><code>flushBuffer()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#isCommitted--"><code>isCommitted()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#reset--"><code>reset()</code></a></dd>
</dl>
</li>
</ul>
<a name="flushBuffer--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>flushBuffer</h4>
<pre>void&nbsp;flushBuffer()
throws java.io.IOException</pre>
<div class="block">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.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if the act of flushing the buffer cannot be
completed.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../javax/servlet/ServletResponse.html#setBufferSize-int-"><code>setBufferSize(int)</code></a>,
<a href="../../javax/servlet/ServletResponse.html#getBufferSize--"><code>getBufferSize()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#isCommitted--"><code>isCommitted()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#reset--"><code>reset()</code></a></dd>
</dl>
</li>
</ul>
<a name="resetBuffer--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>resetBuffer</h4>
<pre>void&nbsp;resetBuffer()</pre>
<div class="block">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
<code>IllegalStateException</code>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>Servlet 2.3</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../javax/servlet/ServletResponse.html#setBufferSize-int-"><code>setBufferSize(int)</code></a>,
<a href="../../javax/servlet/ServletResponse.html#getBufferSize--"><code>getBufferSize()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#isCommitted--"><code>isCommitted()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#reset--"><code>reset()</code></a></dd>
</dl>
</li>
</ul>
<a name="isCommitted--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCommitted</h4>
<pre>boolean&nbsp;isCommitted()</pre>
<div class="block">Returns a boolean indicating if the response has been
committed. A committed response has already had its status
code and headers written.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a boolean indicating if the response has been
committed</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../javax/servlet/ServletResponse.html#setBufferSize-int-"><code>setBufferSize(int)</code></a>,
<a href="../../javax/servlet/ServletResponse.html#getBufferSize--"><code>getBufferSize()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#flushBuffer--"><code>flushBuffer()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#reset--"><code>reset()</code></a></dd>
</dl>
</li>
</ul>
<a name="reset--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reset</h4>
<pre>void&nbsp;reset()</pre>
<div class="block">Clears any data that exists in the buffer as well as the status code,
headers. The state of calling <a href="../../javax/servlet/ServletResponse.html#getWriter--"><code>getWriter()</code></a> or
<a href="../../javax/servlet/ServletResponse.html#getOutputStream--"><code>getOutputStream()</code></a> is also cleared. It is legal, for instance,
to call <a href="../../javax/servlet/ServletResponse.html#getWriter--"><code>getWriter()</code></a>, <a href="../../javax/servlet/ServletResponse.html#reset--"><code>reset()</code></a> and then
<a href="../../javax/servlet/ServletResponse.html#getOutputStream--"><code>getOutputStream()</code></a>. If <a href="../../javax/servlet/ServletResponse.html#getWriter--"><code>getWriter()</code></a> or
<a href="../../javax/servlet/ServletResponse.html#getOutputStream--"><code>getOutputStream()</code></a> have been called before this method,
then the corrresponding returned Writer or OutputStream will be
staled and the behavior of using the stale object is undefined.
If the response has been committed, this method throws an
<code>IllegalStateException</code>.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalStateException</code> - if the response has already been
committed</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../javax/servlet/ServletResponse.html#setBufferSize-int-"><code>setBufferSize(int)</code></a>,
<a href="../../javax/servlet/ServletResponse.html#getBufferSize--"><code>getBufferSize()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#flushBuffer--"><code>flushBuffer()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#isCommitted--"><code>isCommitted()</code></a></dd>
</dl>
</li>
</ul>
<a name="setLocale-java.util.Locale-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLocale</h4>
<pre>void&nbsp;setLocale(java.util.Locale&nbsp;loc)</pre>
<div class="block">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 <a href="../../javax/servlet/ServletResponse.html#setContentType-java.lang.String-"><code>setContentType(java.lang.String)</code></a> or
<a href="../../javax/servlet/ServletResponse.html#setCharacterEncoding-java.lang.String-"><code>setCharacterEncoding(java.lang.String)</code></a>, <code>getWriter</code> hasn't
been called yet, and the response hasn't been committed yet.
If the deployment descriptor contains a
<code>locale-encoding-mapping-list</code> element, and that
element provides a mapping for the given locale, that mapping
is used. Otherwise, the mapping from locale to character
encoding is container dependent.
<p>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 <a href="../../javax/servlet/ServletResponse.html#setContentType-java.lang.String-"><code>setContentType(java.lang.String)</code></a>
has been called with a charset specification, after
<a href="../../javax/servlet/ServletResponse.html#setCharacterEncoding-java.lang.String-"><code>setCharacterEncoding(java.lang.String)</code></a> has been called, after
<code>getWriter</code> has been called, or after the response
has been committed.
<p>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 <code>Content-Language</code> header,
the character encoding as part of the <code>Content-Type</code>
header for text media types. Note that the character encoding
cannot be communicated via HTTP headers if the servlet does not
specify a content type; however, it is still used to encode text
written via the servlet response's writer.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>loc</code> - the locale of the response</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../javax/servlet/ServletResponse.html#getLocale--"><code>getLocale()</code></a>,
<a href="../../javax/servlet/ServletResponse.html#setContentType-java.lang.String-"><code>setContentType(java.lang.String)</code></a>,
<a href="../../javax/servlet/ServletResponse.html#setCharacterEncoding-java.lang.String-"><code>setCharacterEncoding(java.lang.String)</code></a></dd>
</dl>
</li>
</ul>
<a name="getLocale--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getLocale</h4>
<pre>java.util.Locale&nbsp;getLocale()</pre>
<div class="block">Returns the locale specified for this response
using the <a href="../../javax/servlet/ServletResponse.html#setLocale-java.util.Locale-"><code>setLocale(java.util.Locale)</code></a> method. Calls made to
<code>setLocale</code> after the response is committed
have no effect. If no locale has been specified,
the container's default locale is returned.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the Locale for this response.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../javax/servlet/ServletResponse.html#setLocale-java.util.Locale-"><code>setLocale(java.util.Locale)</code></a></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../javax/servlet/ServletRequestWrapper.html" title="class in javax.servlet"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../javax/servlet/ServletResponseWrapper.html" title="class in javax.servlet"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?javax/servlet/ServletResponse.html" target="_top">Frames</a></li>
<li><a href="ServletResponse.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>