<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>Deprecated List</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="Deprecated List";
        }
    }
    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>Package</li>
<li>Class</li>
<li><a href="overview-tree.html">Tree</a></li>
<li class="navBarCell1Rev">Deprecated</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>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?deprecated-list.html" target="_top">Frames</a></li>
<li><a href="deprecated-list.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>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 title="Deprecated API" class="title">Deprecated API</h1>
<h2 title="Contents">Contents</h2>
<ul>
<li><a href="#interface">Deprecated Interfaces</a></li>
<li><a href="#class">Deprecated Classes</a></li>
<li><a href="#exception">Deprecated Exceptions</a></li>
<li><a href="#annotation.type">Deprecated Annotation Types</a></li>
<li><a href="#field">Deprecated Fields</a></li>
<li><a href="#method">Deprecated Methods</a></li>
<li><a href="#constructor">Deprecated Constructors</a></li>
<li><a href="#annotation.type.member">Deprecated Annotation Type Elements</a></li>
</ul>
</div>
<div class="contentContainer"><a name="interface">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Interfaces table, listing deprecated interfaces, and an explanation">
<caption><span>Deprecated Interfaces</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Interface and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="jakarta/servlet/jsp/el/FunctionMapper.html" title="interface in jakarta.servlet.jsp.el">jakarta.servlet.jsp.el.FunctionMapper</a>
<div class="block"><span class="deprecationComment">As of JSP 2.1, replaced by <code>jakarta.el.FunctionMapper</code></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/resource/spi/security/GenericCredential.html" title="interface in jakarta.resource.spi.security">jakarta.resource.spi.security.GenericCredential</a>
<div class="block"><span class="deprecationComment">The preferred way to represent generic credential information 
  is via the <code>org.ietf.jgss.GSSCredential</code> interface in 
  J2SE Version 1.4, which provides similar functionality.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/servlet/jsp/el/VariableResolver.html" title="interface in jakarta.servlet.jsp.el">jakarta.servlet.jsp.el.VariableResolver</a>
<div class="block"><span class="deprecationComment">As of JSP 2.1, replaced by <code>jakarta.el.ELResolver</code></span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="class">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Classes table, listing deprecated classes, and an explanation">
<caption><span>Deprecated Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="jakarta/servlet/jsp/el/Expression.html" title="class in jakarta.servlet.jsp.el">jakarta.servlet.jsp.el.Expression</a>
<div class="block"><span class="deprecationComment">As of JSP 2.1, replaced by <code>jakarta.el.ValueExpression</code></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/servlet/jsp/el/ExpressionEvaluator.html" title="class in jakarta.servlet.jsp.el">jakarta.servlet.jsp.el.ExpressionEvaluator</a>
<div class="block"><span class="deprecationComment">As of JSP 2.1, replaced by <code>jakarta.el.ExpressionFactory</code></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/ws/rs/core/Link.JaxbAdapter.html" title="class in jakarta.ws.rs.core">jakarta.ws.rs.core.Link.JaxbAdapter</a>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/ws/rs/core/Link.JaxbLink.html" title="class in jakarta.ws.rs.core">jakarta.ws.rs.core.Link.JaxbLink</a>&nbsp;</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="exception">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Exceptions table, listing deprecated exceptions, and an explanation">
<caption><span>Deprecated Exceptions</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Exceptions and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="jakarta/servlet/jsp/el/ELException.html" title="class in jakarta.servlet.jsp.el">jakarta.servlet.jsp.el.ELException</a>
<div class="block"><span class="deprecationComment">As of JSP 2.1, replaced by <code>jakarta.el.ELException</code></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/servlet/jsp/el/ELParseException.html" title="class in jakarta.servlet.jsp.el">jakarta.servlet.jsp.el.ELParseException</a>
<div class="block"><span class="deprecationComment">As of JSP 2.1, replaced by <code>jakarta.el.ELException</code></span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="annotation.type">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Annotation Types table, listing deprecated annotation types, and an explanation">
<caption><span>Deprecated Annotation Types</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Annotation Type and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="jakarta/jws/soap/InitParam.html" title="annotation in jakarta.jws.soap">jakarta.jws.soap.InitParam</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/jws/soap/SOAPMessageHandler.html" title="annotation in jakarta.jws.soap">jakarta.jws.soap.SOAPMessageHandler</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/jws/soap/SOAPMessageHandlers.html" title="annotation in jakarta.jws.soap">jakarta.jws.soap.SOAPMessageHandlers</a>
<div class="block"><span class="deprecationComment">As of JSR-181 2.0 with no replacement.</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="field">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Fields table, listing deprecated fields, and an explanation">
<caption><span>Deprecated Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Field and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="jakarta/servlet/jsp/tagext/BodyTag.html#EVAL_BODY_TAG">jakarta.servlet.jsp.tagext.BodyTag.EVAL_BODY_TAG</a>
<div class="block"><span class="deprecationComment">As of Java JSP API 1.2, use BodyTag.EVAL_BODY_BUFFERED or IterationTag.EVAL_BODY_AGAIN.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/servlet/http/HttpServlet.html#LEGACY_DO_HEAD">jakarta.servlet.http.HttpServlet.LEGACY_DO_HEAD</a>
<div class="block"><span class="deprecationComment">may be removed in future releases</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/persistence/Persistence.html#PERSISTENCE_PROVIDER">jakarta.persistence.Persistence.PERSISTENCE_PROVIDER</a>
<div class="block"><span class="deprecationComment">TODO: Either change TCK reference to PERSISTENCE_PROVIDER field to expect 
 "jakarta.persistence.spi.PersistenceProvider" or remove PERSISTENCE_PROVIDER field and also update TCK signature 
 tests.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/persistence/Persistence.html#providers">jakarta.persistence.Persistence.providers</a>&nbsp;</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="method">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Methods table, listing deprecated methods, and an explanation">
<caption><span>Deprecated Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Method and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="jakarta/servlet/SessionCookieConfig.html#getComment--">jakarta.servlet.SessionCookieConfig.getComment()</a>
<div class="block"><span class="deprecationComment">This is no longer required with RFC 6265</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/servlet/http/Cookie.html#getComment--">jakarta.servlet.http.Cookie.getComment()</a>
<div class="block"><span class="deprecationComment">This is no longer required with RFC 6265</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/servlet/jsp/JspContext.html#getExpressionEvaluator--">jakarta.servlet.jsp.JspContext.getExpressionEvaluator()</a>
<div class="block"><span class="deprecationComment">As of JSP 2.1, replaced by <a href="jakarta/servlet/jsp/JspApplicationContext.html#getExpressionFactory--"><code>JspApplicationContext.getExpressionFactory()</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/servlet/jsp/el/ImplicitObjectELResolver.html#getFeatureDescriptors-ELContext-java.lang.Object-">jakarta.servlet.jsp.el.ImplicitObjectELResolver.getFeatureDescriptors(ELContext, Object)</a>
<div class="block"><span class="deprecationComment">This method is deprecated as of EL 5.0 and will be removed in EL 6.0 (Jakarta EE 11). Therefore it
             will be removed here in JSP 4.0.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/servlet/jsp/el/ScopedAttributeELResolver.html#getFeatureDescriptors-ELContext-java.lang.Object-">jakarta.servlet.jsp.el.ScopedAttributeELResolver.getFeatureDescriptors(ELContext, Object)</a>
<div class="block"><span class="deprecationComment">This method is deprecated as of EL 5.0 and will be removed in EL 6.0 (Jakarta EE 11). Therefore it
             will be removed here in JSP 4.0.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/resource/ResourceException.html#getLinkedException--">jakarta.resource.ResourceException.getLinkedException()</a>
<div class="block"><span class="deprecationComment">J2SE release 1.4 supports a chained exception facility 
 that allows any throwable to know about another throwable, if any,
 that caused it to get thrown. Refer to <code>getCause</code> and 
 <code>initCause</code> methods of the 
 <code>java.lang.Throwable</code> class..</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/resource/cci/ResourceWarning.html#getLinkedWarning--">jakarta.resource.cci.ResourceWarning.getLinkedWarning()</a>
<div class="block"><span class="deprecationComment">Java&trade; release 1.4 supports a chained exception facility 
 that allows any throwable to know about another throwable, if any,
 that caused it to get thrown. Refer to <code>getCause</code> and 
 <code>initCause</code> methods of the 
 <code>java.lang.Throwable</code> class.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/servlet/jsp/JspException.html#getRootCause--">jakarta.servlet.jsp.JspException.getRootCause()</a>
<div class="block"><span class="deprecationComment">As of JSP 2.1, replaced by <code>Throwable.getCause()</code></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/ws/rs/core/Application.html#getSingletons--">jakarta.ws.rs.core.Application.getSingletons()</a>
<div class="block"><span class="deprecationComment">Automatic discovery of resources and providers or the <code>getClasses</code> method is preferred over
 <code>getSingletons</code>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/servlet/jsp/JspContext.html#getVariableResolver--">jakarta.servlet.jsp.JspContext.getVariableResolver()</a>
<div class="block"><span class="deprecationComment">As of JSP 2.1, replaced by <code>ELContext#getELResolver</code>, which can be obtained by
             <code>jspContext.getELContext().getELResolver()</code>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/servlet/http/Cookie.html#getVersion--">jakarta.servlet.http.Cookie.getVersion()</a>
<div class="block"><span class="deprecationComment">This is no longer required with RFC 6265</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/servlet/SessionCookieConfig.html#setComment-java.lang.String-">jakarta.servlet.SessionCookieConfig.setComment(String)</a>
<div class="block"><span class="deprecationComment">This is no longer required with RFC 6265</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/servlet/http/Cookie.html#setComment-java.lang.String-">jakarta.servlet.http.Cookie.setComment(String)</a>
<div class="block"><span class="deprecationComment">This is no longer required with RFC 6265</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/resource/ResourceException.html#setLinkedException-java.lang.Exception-">jakarta.resource.ResourceException.setLinkedException(Exception)</a>
<div class="block"><span class="deprecationComment">J2SE release 1.4 supports a chained exception facility 
 that allows any throwable to know about another throwable, if any,
 that caused it to get thrown. Refer to <code>getCause</code> and 
 <code>initCause</code> methods of the 
 <code>java.lang.Throwable</code> class.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/resource/cci/ResourceWarning.html#setLinkedWarning-jakarta.resource.cci.ResourceWarning-">jakarta.resource.cci.ResourceWarning.setLinkedWarning(ResourceWarning)</a>
<div class="block"><span class="deprecationComment">J2SE release 1.4 supports a chained exception facility 
 that allows any throwable to know about another throwable, if any,
 that caused it to get thrown. Refer to <code>getCause</code> and 
 <code>initCause</code> methods of the 
 <code>java.lang.Throwable</code> class.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/servlet/http/Cookie.html#setVersion-int-">jakarta.servlet.http.Cookie.setVersion(int)</a>
<div class="block"><span class="deprecationComment">This is no longer required with RFC 6265</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/ws/rs/core/NewCookie.html#toString--">jakarta.ws.rs.core.NewCookie.toString()</a>
<div class="block"><span class="deprecationComment">The format of the toString() method is subject to change in a future version. Please use
 RuntimeDelegate.getInstance().createHeaderDelegate(NewCookie.class).toString(value) instead if you rely on the format
 of this method.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/ws/rs/core/EntityTag.html#toString--">jakarta.ws.rs.core.EntityTag.toString()</a>
<div class="block"><span class="deprecationComment">The format of the toString() method is subject to change in a future version. Please use
 RuntimeDelegate.getInstance().createHeaderDelegate(EntityTag.class).toString(value) instead if you rely on the format
 of this method.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/ws/rs/core/Cookie.html#toString--">jakarta.ws.rs.core.Cookie.toString()</a>
<div class="block"><span class="deprecationComment">The format of the toString() method is subject to change in a future version. Please use
 RuntimeDelegate.getInstance().createHeaderDelegate(Cookie.class).toString(value) instead if you rely on the format of
 this method.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/ws/rs/core/CacheControl.html#toString--">jakarta.ws.rs.core.CacheControl.toString()</a>
<div class="block"><span class="deprecationComment">The format of the toString() method is subject to change in a future version. Please use
 RuntimeDelegate.getInstance().createHeaderDelegate(CacheControl.class).toString(value) instead if you rely on the
 format of this method.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/ws/rs/core/NewCookie.html#valueOf-java.lang.String-">jakarta.ws.rs.core.NewCookie.valueOf(String)</a>
<div class="block"><span class="deprecationComment">This method will be removed in a future version. Please use
 RuntimeDelegate.getInstance().createHeaderDelegate(NewCookie.class).fromString(value) instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/ws/rs/core/EntityTag.html#valueOf-java.lang.String-">jakarta.ws.rs.core.EntityTag.valueOf(String)</a>
<div class="block"><span class="deprecationComment">This method will be removed in a future version. Please use
 RuntimeDelegate.getInstance().createHeaderDelegate(EntityTag.class).fromString(value) instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/ws/rs/core/Cookie.html#valueOf-java.lang.String-">jakarta.ws.rs.core.Cookie.valueOf(String)</a>
<div class="block"><span class="deprecationComment">This method will be removed in a future version. Please use
 RuntimeDelegate.getInstance().createHeaderDelegate(Cookie.class).fromString(value) instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/ws/rs/core/CacheControl.html#valueOf-java.lang.String-">jakarta.ws.rs.core.CacheControl.valueOf(String)</a>
<div class="block"><span class="deprecationComment">This method will be removed in a future version. Please use
 RuntimeDelegate.getInstance().createHeaderDelegate(CacheControl.class).fromString(value) instead.</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="constructor">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Constructors table, listing deprecated constructors, and an explanation">
<caption><span>Deprecated Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="jakarta/ws/rs/core/Cookie.html#Cookie-java.lang.String-java.lang.String-">jakarta.ws.rs.core.Cookie(String, String)</a>
<div class="block"><span class="deprecationComment">This constructor will be removed in a future version. Please use <a href="jakarta/ws/rs/core/Cookie.Builder.html" title="class in jakarta.ws.rs.core"><code>Cookie.Builder</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/ws/rs/core/Cookie.html#Cookie-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">jakarta.ws.rs.core.Cookie(String, String, String, String)</a>
<div class="block"><span class="deprecationComment">This constructor will be removed in a future version. Please use <a href="jakarta/ws/rs/core/Cookie.Builder.html" title="class in jakarta.ws.rs.core"><code>Cookie.Builder</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/ws/rs/core/Cookie.html#Cookie-java.lang.String-java.lang.String-java.lang.String-java.lang.String-int-">jakarta.ws.rs.core.Cookie(String, String, String, String, int)</a>
<div class="block"><span class="deprecationComment">This constructor will be removed in a future version. Please use <a href="jakarta/ws/rs/core/Cookie.Builder.html" title="class in jakarta.ws.rs.core"><code>Cookie.Builder</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/ws/rs/core/NewCookie.html#NewCookie-jakarta.ws.rs.core.Cookie-">jakarta.ws.rs.core.NewCookie(Cookie)</a>
<div class="block"><span class="deprecationComment">This constructor will be removed in a future version. Please use <a href="jakarta/ws/rs/core/NewCookie.Builder.html" title="class in jakarta.ws.rs.core"><code>NewCookie.Builder</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/ws/rs/core/NewCookie.html#NewCookie-jakarta.ws.rs.core.Cookie-java.lang.String-int-boolean-">jakarta.ws.rs.core.NewCookie(Cookie, String, int, boolean)</a>
<div class="block"><span class="deprecationComment">This constructor will be removed in a future version. Please use <a href="jakarta/ws/rs/core/NewCookie.Builder.html" title="class in jakarta.ws.rs.core"><code>NewCookie.Builder</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/ws/rs/core/NewCookie.html#NewCookie-jakarta.ws.rs.core.Cookie-java.lang.String-int-java.util.Date-boolean-boolean-">jakarta.ws.rs.core.NewCookie(Cookie, String, int, Date, boolean, boolean)</a>
<div class="block"><span class="deprecationComment">This constructor will be removed in a future version. Please use <a href="jakarta/ws/rs/core/NewCookie.Builder.html" title="class in jakarta.ws.rs.core"><code>NewCookie.Builder</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/ws/rs/core/NewCookie.html#NewCookie-jakarta.ws.rs.core.Cookie-java.lang.String-int-java.util.Date-boolean-boolean-jakarta.ws.rs.core.NewCookie.SameSite-">jakarta.ws.rs.core.NewCookie(Cookie, String, int, Date, boolean, boolean, NewCookie.SameSite)</a>
<div class="block"><span class="deprecationComment">This constructor will be removed in a future version. Please use <a href="jakarta/ws/rs/core/NewCookie.Builder.html" title="class in jakarta.ws.rs.core"><code>NewCookie.Builder</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/ws/rs/core/NewCookie.html#NewCookie-java.lang.String-java.lang.String-">jakarta.ws.rs.core.NewCookie(String, String)</a>
<div class="block"><span class="deprecationComment">This constructor will be removed in a future version. Please use <a href="jakarta/ws/rs/core/NewCookie.Builder.html" title="class in jakarta.ws.rs.core"><code>NewCookie.Builder</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/ws/rs/core/NewCookie.html#NewCookie-java.lang.String-java.lang.String-java.lang.String-java.lang.String-int-java.lang.String-int-boolean-">jakarta.ws.rs.core.NewCookie(String, String, String, String, int, String, int, boolean)</a>
<div class="block"><span class="deprecationComment">This constructor will be removed in a future version. Please use <a href="jakarta/ws/rs/core/NewCookie.Builder.html" title="class in jakarta.ws.rs.core"><code>NewCookie.Builder</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/ws/rs/core/NewCookie.html#NewCookie-java.lang.String-java.lang.String-java.lang.String-java.lang.String-int-java.lang.String-int-java.util.Date-boolean-boolean-">jakarta.ws.rs.core.NewCookie(String, String, String, String, int, String, int, Date, boolean, boolean)</a>
<div class="block"><span class="deprecationComment">This constructor will be removed in a future version. Please use <a href="jakarta/ws/rs/core/NewCookie.Builder.html" title="class in jakarta.ws.rs.core"><code>NewCookie.Builder</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/ws/rs/core/NewCookie.html#NewCookie-java.lang.String-java.lang.String-java.lang.String-java.lang.String-int-java.lang.String-int-java.util.Date-boolean-boolean-jakarta.ws.rs.core.NewCookie.SameSite-">jakarta.ws.rs.core.NewCookie(String, String, String, String, int, String, int, Date, boolean, boolean, NewCookie.SameSite)</a>
<div class="block"><span class="deprecationComment">This constructor will be removed in a future version. Please use <a href="jakarta/ws/rs/core/NewCookie.Builder.html" title="class in jakarta.ws.rs.core"><code>NewCookie.Builder</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/ws/rs/core/NewCookie.html#NewCookie-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-int-boolean-">jakarta.ws.rs.core.NewCookie(String, String, String, String, String, int, boolean)</a>
<div class="block"><span class="deprecationComment">This constructor will be removed in a future version. Please use <a href="jakarta/ws/rs/core/NewCookie.Builder.html" title="class in jakarta.ws.rs.core"><code>NewCookie.Builder</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="jakarta/ws/rs/core/NewCookie.html#NewCookie-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-int-boolean-boolean-">jakarta.ws.rs.core.NewCookie(String, String, String, String, String, int, boolean, boolean)</a>
<div class="block"><span class="deprecationComment">This constructor will be removed in a future version. Please use <a href="jakarta/ws/rs/core/NewCookie.Builder.html" title="class in jakarta.ws.rs.core"><code>NewCookie.Builder</code></a> instead.</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="annotation.type.member">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Annotation Type Elements table, listing deprecated annotation type elements, and an explanation">
<caption><span>Deprecated Annotation Type Elements</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Annotation Type Element and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="jakarta/jws/HandlerChain.html#name--">jakarta.jws.HandlerChain.name</a>
<div class="block"><span class="deprecationComment">As of JSR-181 2.0 with no replacement.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="jakarta/json/bind/annotation/JsonbProperty.html#nillable--">jakarta.json.bind.annotation.JsonbProperty.nillable</a>
<div class="block"><span class="deprecationComment">Please use <a href="jakarta/json/bind/annotation/JsonbNillable.html" title="annotation in jakarta.json.bind.annotation"><code>JsonbNillable</code></a> as another annotation instead. This option will be removed in the future.</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<!-- ======= 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>Package</li>
<li>Class</li>
<li><a href="overview-tree.html">Tree</a></li>
<li class="navBarCell1Rev">Deprecated</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>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?deprecated-list.html" target="_top">Frames</a></li>
<li><a href="deprecated-list.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>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
