<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>Produces</title>
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>

<link rel="shortcut icon" href="/img/jakarta-favicon.ico">
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Produces";
        }
    }
    catch(err) {
    }
//-->
</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/ws/rs/ProcessingException.html" title="class in javax.ws.rs"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../javax/ws/rs/PUT.html" title="annotation in javax.ws.rs"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?javax/ws/rs/Produces.html" target="_top">Frames</a></li>
<li><a href="Produces.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>Field&nbsp;|&nbsp;</li>
<li>Required&nbsp;|&nbsp;</li>
<li><a href="#annotation.type.optional.element.summary">Optional</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#annotation.type.element.detail">Element</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.ws.rs</div>
<h2 title="Annotation Type Produces" class="title">Annotation Type Produces</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>@Inherited
 @Target(value={TYPE,METHOD})
 @Retention(value=RUNTIME)
 @Documented
public @interface <span class="memberNameLabel">Produces</span></pre>
<div class="block">Defines the media type(s) that the methods of a resource class or
 <a href="../../../javax/ws/rs/ext/MessageBodyWriter.html" title="interface in javax.ws.rs.ext"><code>MessageBodyWriter</code></a> can produce.
 If not specified then a container will assume that any type can be produced.
 Method level annotations override a class level annotation. A container
 is responsible for ensuring that the method invoked is capable of producing
 one of the media types requested in the HTTP request. If no such method is
 available the container must respond with a HTTP "406 Not Acceptable" as
 specified by RFC 2616.

 <p>A method for which there is a single-valued <code>@Produces</code>
 is not required to set the media type of representations that it produces:
 the container will use the value of the <code>@Produces</code> when
 sending a response.</p></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../javax/ws/rs/ext/MessageBodyWriter.html" title="interface in javax.ws.rs.ext"><code>MessageBodyWriter</code></a></dd>
<dt><span class="simpleTagLabel">Examples (en):</span></dt>
<dd><a href="../../../../../../tomee-8.0/examples/xa-datasource.html">xa-datasource</a>, <a href="../../../../../../tomee-8.0/examples/tomee-jms-portability.html">tomee-jms-portability</a>, <a href="../../../../../../tomee-8.0/examples/serverless-tomee-webprofile.html">serverless-tomee-webprofile</a>, <a href="../../../../../../tomee-8.0/examples/serverless-tomee-plus.html">serverless-tomee-plus</a>, <a href="../../../../../../tomee-8.0/examples/serverless-tomee-plume.html">serverless-tomee-plume</a>, <a href="../../../../../../tomee-8.0/examples/serverless-tomee-microprofile.html">serverless-tomee-microprofile</a>, <a href="../../../../../../tomee-8.0/examples/serverless-builder.html">serverless-builder</a>, <a href="../../../../../../tomee-8.0/examples/security-tomcat-user-identitystore.html">security-tomcat-user-identitystore</a>, <a href="../../../../../../tomee-8.0/examples/rest-xml-json.html">rest-xml-json</a>, <a href="../../../../../../tomee-8.0/examples/rest-on-ejb.html">rest-on-ejb</a>, <a href="../../../../../../tomee-8.0/examples/rest-example.html">rest-example</a>, <a href="../../../../../../tomee-8.0/examples/rest-cdi.html">rest-cdi</a>, <a href="../../../../../../tomee-8.0/examples/polling-parent.html">polling-parent</a>, <a href="../../../../../../tomee-8.0/examples/mp-metrics-timed.html">mp-metrics-timed</a>, <a href="../../../../../../tomee-8.0/examples/mp-metrics-metered.html">mp-metrics-metered</a>, <a href="../../../../../../tomee-8.0/examples/mp-metrics-histogram.html">mp-metrics-histogram</a>, <a href="../../../../../../tomee-8.0/examples/mp-metrics-gauge.html">mp-metrics-gauge</a>, <a href="../../../../../../tomee-8.0/examples/mp-metrics-counted.html">mp-metrics-counted</a>, <a href="../../../../../../tomee-8.0/examples/mp-jwt-bean-validation.html">mp-jwt-bean-validation</a>, <a href="../../../../../../tomee-8.0/examples/mp-jwt-bean-validation-strongly-typed.html">mp-jwt-bean-validation-strongly-typed</a>, <a href="../../../../../../tomee-8.0/examples/mp-jsonb-configuration.html">mp-jsonb-configuration</a>, <a href="../../../../../../tomee-8.0/examples/mp-faulttolerance-timeout.html">mp-faulttolerance-timeout</a>, <a href="../../../../../../tomee-8.0/examples/mp-faulttolerance-retry.html">mp-faulttolerance-retry</a>, <a href="../../../../../../tomee-8.0/examples/mp-faulttolerance-fallback.html">mp-faulttolerance-fallback</a>, <a href="../../../../../../tomee-8.0/examples/moviefun-rest.html">moviefun-rest</a>, <a href="../../../../../../tomee-8.0/examples/jsonb-custom-serializer.html">jsonb-custom-serializer</a>, <a href="../../../../../../tomee-8.0/examples/jsonb-configuration.html">jsonb-configuration</a>, <a href="../../../../../../tomee-8.0/examples/jaxrs-json-provider-jettison.html">jaxrs-json-provider-jettison</a>, <a href="../../../../../../tomee-8.0/examples/filter-cdi.html">filter-cdi</a>, <a href="../../../../../../tomee-8.0/examples/connector-war.html">connector-war</a>, <a href="../../../../../../tomee-8.0/examples/bval-evaluation-redeployment.html">bval-evaluation-redeployment</a></dd>
<dt><span class="simpleTagLabel">Examples (es):</span></dt>
<dd><a href="../../../../../../tomee-8.0/es/examples/xa-datasource.html">xa-datasource</a>, <a href="../../../../../../tomee-8.0/es/examples/rest-xml-json.html">rest-xml-json</a>, <a href="../../../../../../tomee-8.0/es/examples/polling-parent.html">polling-parent</a>, <a href="../../../../../../tomee-8.0/es/examples/mp-metrics-timed.html">mp-metrics-timed</a>, <a href="../../../../../../tomee-8.0/es/examples/mp-metrics-metered.html">mp-metrics-metered</a>, <a href="../../../../../../tomee-8.0/es/examples/mp-metrics-histogram.html">mp-metrics-histogram</a>, <a href="../../../../../../tomee-8.0/es/examples/mp-metrics-gauge.html">mp-metrics-gauge</a>, <a href="../../../../../../tomee-8.0/es/examples/mp-metrics-counted.html">mp-metrics-counted</a>, <a href="../../../../../../tomee-8.0/es/examples/mp-jwt-bean-validation.html">mp-jwt-bean-validation</a>, <a href="../../../../../../tomee-8.0/es/examples/mp-jsonb-configuration.html">mp-jsonb-configuration</a>, <a href="../../../../../../tomee-8.0/es/examples/mp-faulttolerance-timeout.html">mp-faulttolerance-timeout</a>, <a href="../../../../../../tomee-8.0/es/examples/mp-faulttolerance-retry.html">mp-faulttolerance-retry</a>, <a href="../../../../../../tomee-8.0/es/examples/mp-faulttolerance-fallback.html">mp-faulttolerance-fallback</a>, <a href="../../../../../../tomee-8.0/es/examples/jaxrs-json-provider-jettison.html">jaxrs-json-provider-jettison</a></dd>
<dt><span class="simpleTagLabel">Examples (pt):</span></dt>
<dd><a href="../../../../../../tomee-8.0/pt/examples/xa-datasource.html">xa-datasource</a>, <a href="../../../../../../tomee-8.0/pt/examples/tomee-jms-portability.html">tomee-jms-portability</a>, <a href="../../../../../../tomee-8.0/pt/examples/serverless-tomee-webprofile.html">serverless-tomee-webprofile</a>, <a href="../../../../../../tomee-8.0/pt/examples/serverless-tomee-plus.html">serverless-tomee-plus</a>, <a href="../../../../../../tomee-8.0/pt/examples/serverless-tomee-plume.html">serverless-tomee-plume</a>, <a href="../../../../../../tomee-8.0/pt/examples/serverless-tomee-microprofile.html">serverless-tomee-microprofile</a>, <a href="../../../../../../tomee-8.0/pt/examples/serverless-builder.html">serverless-builder</a>, <a href="../../../../../../tomee-8.0/pt/examples/rest-xml-json.html">rest-xml-json</a>, <a href="../../../../../../tomee-8.0/pt/examples/rest-cdi.html">rest-cdi</a>, <a href="../../../../../../tomee-8.0/pt/examples/polling-parent.html">polling-parent</a>, <a href="../../../../../../tomee-8.0/pt/examples/mp-metrics-timed.html">mp-metrics-timed</a>, <a href="../../../../../../tomee-8.0/pt/examples/mp-metrics-metered.html">mp-metrics-metered</a>, <a href="../../../../../../tomee-8.0/pt/examples/mp-metrics-histogram.html">mp-metrics-histogram</a>, <a href="../../../../../../tomee-8.0/pt/examples/mp-metrics-gauge.html">mp-metrics-gauge</a>, <a href="../../../../../../tomee-8.0/pt/examples/mp-metrics-counted.html">mp-metrics-counted</a>, <a href="../../../../../../tomee-8.0/pt/examples/mp-jwt-bean-validation.html">mp-jwt-bean-validation</a>, <a href="../../../../../../tomee-8.0/pt/examples/mp-jsonb-configuration.html">mp-jsonb-configuration</a>, <a href="../../../../../../tomee-8.0/pt/examples/mp-faulttolerance-timeout.html">mp-faulttolerance-timeout</a>, <a href="../../../../../../tomee-8.0/pt/examples/mp-faulttolerance-retry.html">mp-faulttolerance-retry</a>, <a href="../../../../../../tomee-8.0/pt/examples/mp-faulttolerance-fallback.html">mp-faulttolerance-fallback</a>, <a href="../../../../../../tomee-8.0/pt/examples/moviefun-rest.html">moviefun-rest</a>, <a href="../../../../../../tomee-8.0/pt/examples/jsonb-custom-serializer.html">jsonb-custom-serializer</a>, <a href="../../../../../../tomee-8.0/pt/examples/jsonb-configuration.html">jsonb-configuration</a>, <a href="../../../../../../tomee-8.0/pt/examples/jaxrs-json-provider-jettison.html">jaxrs-json-provider-jettison</a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== ANNOTATION TYPE OPTIONAL MEMBER SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="annotation.type.optional.element.summary">
<!--   -->
</a>
<h3>Optional Element Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Optional Element Summary table, listing optional elements, and an explanation">
<caption><span>Optional Elements</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Optional Element and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/ws/rs/Produces.html#value--">value</a></span></code>
<div class="block">A list of media types.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ ANNOTATION TYPE MEMBER DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="annotation.type.element.detail">
<!--   -->
</a>
<h3>Element Detail</h3>
<a name="value--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>value</h4>
<pre>public abstract&nbsp;java.lang.String[]&nbsp;value</pre>
<div class="block">A list of media types. Each entry may specify a single type or consist
 of a comma separated list of types, with any leading or trailing white-spaces
 in a single type entry being ignored. For example:
 <pre>
  {"image/jpeg, image/gif ", " image/png"}
 </pre>
 Use of the comma-separated form allows definition of a common string constant
 for use on multiple targets.</div>
<dl>
<dt>Default:</dt>
<dd>"*/*"</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/ws/rs/ProcessingException.html" title="class in javax.ws.rs"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../javax/ws/rs/PUT.html" title="annotation in javax.ws.rs"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?javax/ws/rs/Produces.html" target="_top">Frames</a></li>
<li><a href="Produces.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>Field&nbsp;|&nbsp;</li>
<li>Required&nbsp;|&nbsp;</li>
<li><a href="#annotation.type.optional.element.summary">Optional</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#annotation.type.element.detail">Element</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
