<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>SOAPHeader</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="SOAPHeader";
        }
    }
    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};
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="../../../jakarta/xml/soap/SOAPFaultElement.html" title="interface in jakarta.xml.soap"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?jakarta/xml/soap/SOAPHeader.html" target="_top">Frames</a></li>
<li><a href="SOAPHeader.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">jakarta.xml.soap</div>
<h2 title="Interface SOAPHeader" class="title">Interface SOAPHeader</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd>org.w3c.dom.Element, org.w3c.dom.Node, <a href="../../../jakarta/xml/soap/SOAPElement.html" title="interface in jakarta.xml.soap">SOAPElement</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">SOAPHeader</span>
extends <a href="../../../jakarta/xml/soap/SOAPElement.html" title="interface in jakarta.xml.soap">SOAPElement</a></pre>
<div class="block">A representation of the SOAP header
 element. A SOAP header element consists of XML data that affects
 the way the application-specific content is processed by the message
 provider. For example, transaction semantics, authentication information,
 and so on, can be specified as the content of a <code>SOAPHeader</code>
 object.
 <P>
 A <code>SOAPEnvelope</code> object contains an empty
 <code>SOAPHeader</code> object by default. If the <code>SOAPHeader</code>
 object, which is optional, is not needed, it can be retrieved and deleted
 with the following line of code. The variable <i>se</i> is a
 <code>SOAPEnvelope</code> object.
 <pre><code>
      se.getHeader().detachNode();
 </code></pre>

 A <code>SOAPHeader</code> object is created with the <code>SOAPEnvelope</code>
 method <code>addHeader</code>. This method, which creates a new header and adds it
 to the envelope, may be called only after the existing header has been removed.

 <pre><code>
      se.getHeader().detachNode();
      SOAPHeader sh = se.addHeader();
 </code></pre>
 <P>
 A <code>SOAPHeader</code> object can have only <code>SOAPHeaderElement</code>
 objects as its immediate children. The method <code>addHeaderElement</code>
 creates a new <code>HeaderElement</code> object and adds it to the
 <code>SOAPHeader</code> object. In the following line of code, the
 argument to the method <code>addHeaderElement</code> is a <code>Name</code>
 object that is the name for the new <code>HeaderElement</code> object.
 <pre><code>
      SOAPHeaderElement shElement = sh.addHeaderElement(name);
 </code></pre></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.6</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap"><code>SOAPHeaderElement</code></a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.w3c.dom.Node">
<!--   -->
</a>
<h3>Fields inherited from interface&nbsp;org.w3c.dom.Node</h3>
<code>ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE</code></li>
</ul>
</li>
</ul>
<!-- ========== 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><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/xml/soap/SOAPHeader.html#addHeaderElement-jakarta.xml.soap.Name-">addHeaderElement</a></span>(<a href="../../../jakarta/xml/soap/Name.html" title="interface in jakarta.xml.soap">Name</a>&nbsp;name)</code>
<div class="block">Creates a new <code>SOAPHeaderElement</code> object initialized with the
 specified name and adds it to this <code>SOAPHeader</code> object.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/xml/soap/SOAPHeader.html#addHeaderElement-javax.xml.namespace.QName-">addHeaderElement</a></span>(javax.xml.namespace.QName&nbsp;qname)</code>
<div class="block">Creates a new <code>SOAPHeaderElement</code> object initialized with the
 specified qname and adds it to this <code>SOAPHeader</code> object.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/xml/soap/SOAPHeader.html#addNotUnderstoodHeaderElement-javax.xml.namespace.QName-">addNotUnderstoodHeaderElement</a></span>(javax.xml.namespace.QName&nbsp;name)</code>
<div class="block">Creates a new NotUnderstood <code>SOAPHeaderElement</code> object initialized
 with the specified name and adds it to this <code>SOAPHeader</code> object.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/xml/soap/SOAPHeader.html#addUpgradeHeaderElement-java.util.Iterator-">addUpgradeHeaderElement</a></span>(java.util.Iterator&lt;java.lang.String&gt;&nbsp;supportedSOAPURIs)</code>
<div class="block">Creates a new Upgrade <code>SOAPHeaderElement</code> object initialized
 with the specified List of supported SOAP URIs and adds it to this
 <code>SOAPHeader</code> object.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/xml/soap/SOAPHeader.html#addUpgradeHeaderElement-java.lang.String-">addUpgradeHeaderElement</a></span>(java.lang.String&nbsp;supportedSoapUri)</code>
<div class="block">Creates a new Upgrade <code>SOAPHeaderElement</code> object initialized
 with the specified supported SOAP URI and adds it to this
 <code>SOAPHeader</code> object.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/xml/soap/SOAPHeader.html#addUpgradeHeaderElement-java.lang.String:A-">addUpgradeHeaderElement</a></span>(java.lang.String[]&nbsp;supportedSoapUris)</code>
<div class="block">Creates a new Upgrade <code>SOAPHeaderElement</code> object initialized
 with the specified array of supported SOAP URIs and adds it to this
 <code>SOAPHeader</code> object.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>java.util.Iterator&lt;<a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/xml/soap/SOAPHeader.html#examineAllHeaderElements--">examineAllHeaderElements</a></span>()</code>
<div class="block">Returns an <code>Iterator</code> over all the <code>SOAPHeaderElement</code> objects
 in this <code>SOAPHeader</code> object.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>java.util.Iterator&lt;<a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/xml/soap/SOAPHeader.html#examineHeaderElements-java.lang.String-">examineHeaderElements</a></span>(java.lang.String&nbsp;actor)</code>
<div class="block">Returns an <code>Iterator</code> over all the <code>SOAPHeaderElement</code> objects
 in this <code>SOAPHeader</code> object
 that have the specified <i>actor</i>.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>java.util.Iterator&lt;<a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/xml/soap/SOAPHeader.html#examineMustUnderstandHeaderElements-java.lang.String-">examineMustUnderstandHeaderElements</a></span>(java.lang.String&nbsp;actor)</code>
<div class="block">Returns an <code>Iterator</code> over all the <code>SOAPHeaderElement</code> objects
 in this <code>SOAPHeader</code> object
 that have the specified <i>actor</i> and that have a MustUnderstand attribute
 whose value is equivalent to <code>true</code>.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>java.util.Iterator&lt;<a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/xml/soap/SOAPHeader.html#extractAllHeaderElements--">extractAllHeaderElements</a></span>()</code>
<div class="block">Returns an <code>Iterator</code> over all the <code>SOAPHeaderElement</code> objects
 in this <code>SOAPHeader</code> object and detaches them
 from this <code>SOAPHeader</code> object.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>java.util.Iterator&lt;<a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/xml/soap/SOAPHeader.html#extractHeaderElements-java.lang.String-">extractHeaderElements</a></span>(java.lang.String&nbsp;actor)</code>
<div class="block">Returns an <code>Iterator</code> over all the <code>SOAPHeaderElement</code> objects
 in this <code>SOAPHeader</code> object
 that have the specified <i>actor</i> and detaches them
 from this <code>SOAPHeader</code> object.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.jakarta.xml.soap.SOAPElement">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;jakarta.xml.soap.<a href="../../../jakarta/xml/soap/SOAPElement.html" title="interface in jakarta.xml.soap">SOAPElement</a></h3>
<code><a href="../../../jakarta/xml/soap/SOAPElement.html#addAttribute-jakarta.xml.soap.Name-java.lang.String-">addAttribute</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#addAttribute-javax.xml.namespace.QName-java.lang.String-">addAttribute</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#addChildElement-jakarta.xml.soap.Name-">addChildElement</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#addChildElement-javax.xml.namespace.QName-">addChildElement</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#addChildElement-jakarta.xml.soap.SOAPElement-">addChildElement</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#addChildElement-java.lang.String-">addChildElement</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#addChildElement-java.lang.String-java.lang.String-">addChildElement</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#addChildElement-java.lang.String-java.lang.String-java.lang.String-">addChildElement</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#addNamespaceDeclaration-java.lang.String-java.lang.String-">addNamespaceDeclaration</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#addTextNode-java.lang.String-">addTextNode</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#createQName-java.lang.String-java.lang.String-">createQName</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#getAllAttributes--">getAllAttributes</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#getAllAttributesAsQNames--">getAllAttributesAsQNames</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#getAttributeValue-jakarta.xml.soap.Name-">getAttributeValue</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#getAttributeValue-javax.xml.namespace.QName-">getAttributeValue</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#getChildElements--">getChildElements</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#getChildElements-jakarta.xml.soap.Name-">getChildElements</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#getChildElements-javax.xml.namespace.QName-">getChildElements</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#getElementName--">getElementName</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#getElementQName--">getElementQName</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#getEncodingStyle--">getEncodingStyle</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#getNamespacePrefixes--">getNamespacePrefixes</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#getNamespaceURI-java.lang.String-">getNamespaceURI</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#getVisibleNamespacePrefixes--">getVisibleNamespacePrefixes</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#removeAttribute-jakarta.xml.soap.Name-">removeAttribute</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#removeAttribute-javax.xml.namespace.QName-">removeAttribute</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#removeContents--">removeContents</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#removeNamespaceDeclaration-java.lang.String-">removeNamespaceDeclaration</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#setElementQName-javax.xml.namespace.QName-">setElementQName</a>, <a href="../../../jakarta/xml/soap/SOAPElement.html#setEncodingStyle-java.lang.String-">setEncodingStyle</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.jakarta.xml.soap.Node">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;jakarta.xml.soap.<a href="../../../jakarta/xml/soap/Node.html" title="interface in jakarta.xml.soap">Node</a></h3>
<code><a href="../../../jakarta/xml/soap/Node.html#detachNode--">detachNode</a>, <a href="../../../jakarta/xml/soap/Node.html#getParentElement--">getParentElement</a>, <a href="../../../jakarta/xml/soap/Node.html#getValue--">getValue</a>, <a href="../../../jakarta/xml/soap/Node.html#recycleNode--">recycleNode</a>, <a href="../../../jakarta/xml/soap/Node.html#setParentElement-jakarta.xml.soap.SOAPElement-">setParentElement</a>, <a href="../../../jakarta/xml/soap/Node.html#setValue-java.lang.String-">setValue</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.w3c.dom.Element">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.w3c.dom.Element</h3>
<code>getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getElementsByTagName, getElementsByTagNameNS, getSchemaTypeInfo, getTagName, hasAttribute, hasAttributeNS, removeAttribute, removeAttributeNode, removeAttributeNS, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setIdAttribute, setIdAttributeNode, setIdAttributeNS</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.w3c.dom.Node">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.w3c.dom.Node</h3>
<code>appendChild, cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData</code></li>
</ul>
</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="addHeaderElement-jakarta.xml.soap.Name-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addHeaderElement</h4>
<pre><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&nbsp;addHeaderElement(<a href="../../../jakarta/xml/soap/Name.html" title="interface in jakarta.xml.soap">Name</a>&nbsp;name)
                            throws <a href="../../../jakarta/xml/soap/SOAPException.html" title="class in jakarta.xml.soap">SOAPException</a></pre>
<div class="block">Creates a new <code>SOAPHeaderElement</code> object initialized with the
 specified name and adds it to this <code>SOAPHeader</code> object.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - a <code>Name</code> object with the name of the new
        <code>SOAPHeaderElement</code> object</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the new <code>SOAPHeaderElement</code> object that was
          inserted into this <code>SOAPHeader</code> object</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../jakarta/xml/soap/SOAPException.html" title="class in jakarta.xml.soap">SOAPException</a></code> - if a SOAP error occurs</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../jakarta/xml/soap/SOAPHeader.html#addHeaderElement-javax.xml.namespace.QName-"><code>addHeaderElement(javax.xml.namespace.QName)</code></a></dd>
</dl>
</li>
</ul>
<a name="addHeaderElement-javax.xml.namespace.QName-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addHeaderElement</h4>
<pre><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&nbsp;addHeaderElement(javax.xml.namespace.QName&nbsp;qname)
                            throws <a href="../../../jakarta/xml/soap/SOAPException.html" title="class in jakarta.xml.soap">SOAPException</a></pre>
<div class="block">Creates a new <code>SOAPHeaderElement</code> object initialized with the
 specified qname and adds it to this <code>SOAPHeader</code> object.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>qname</code> - a <code>QName</code> object with the qname of the new
        <code>SOAPHeaderElement</code> object</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the new <code>SOAPHeaderElement</code> object that was
          inserted into this <code>SOAPHeader</code> object</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../jakarta/xml/soap/SOAPException.html" title="class in jakarta.xml.soap">SOAPException</a></code> - if a SOAP error occurs</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.6, SAAJ 1.3</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../jakarta/xml/soap/SOAPHeader.html#addHeaderElement-jakarta.xml.soap.Name-"><code>addHeaderElement(Name)</code></a></dd>
</dl>
</li>
</ul>
<a name="examineMustUnderstandHeaderElements-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>examineMustUnderstandHeaderElements</h4>
<pre>java.util.Iterator&lt;<a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&gt;&nbsp;examineMustUnderstandHeaderElements(java.lang.String&nbsp;actor)</pre>
<div class="block">Returns an <code>Iterator</code> over all the <code>SOAPHeaderElement</code> objects
 in this <code>SOAPHeader</code> object
 that have the specified <i>actor</i> and that have a MustUnderstand attribute
 whose value is equivalent to <code>true</code>.
 <p>
 In SOAP 1.2 the <i>env:actor</i> attribute is replaced by the <i>env:role</i>
 attribute, but with essentially the same semantics.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>actor</code> - a <code>String</code> giving the URI of the <code>actor</code> / <code>role</code>
        for which to search</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an <code>Iterator</code> object over all the
         <code>SOAPHeaderElement</code> objects that contain the specified
          <code>actor</code> / <code>role</code> and are marked as MustUnderstand</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.6, SAAJ 1.2</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../jakarta/xml/soap/SOAPHeader.html#examineHeaderElements-java.lang.String-"><code>examineHeaderElements(java.lang.String)</code></a>, 
<a href="../../../jakarta/xml/soap/SOAPHeader.html#extractHeaderElements-java.lang.String-"><code>extractHeaderElements(java.lang.String)</code></a>, 
<a href="../../../jakarta/xml/soap/SOAPConstants.html#URI_SOAP_ACTOR_NEXT"><code>SOAPConstants.URI_SOAP_ACTOR_NEXT</code></a></dd>
</dl>
</li>
</ul>
<a name="examineHeaderElements-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>examineHeaderElements</h4>
<pre>java.util.Iterator&lt;<a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&gt;&nbsp;examineHeaderElements(java.lang.String&nbsp;actor)</pre>
<div class="block">Returns an <code>Iterator</code> over all the <code>SOAPHeaderElement</code> objects
 in this <code>SOAPHeader</code> object
 that have the specified <i>actor</i>.

 An <i>actor</i> is a global attribute that indicates the intermediate
 parties that should process a message before it reaches its ultimate
 receiver. An actor receives the message and processes it before sending
 it on to the next actor. The default actor is the ultimate intended
 recipient for the message, so if no actor attribute is included in a
 <code>SOAPHeader</code> object, it is sent to the ultimate receiver
 along with the message body.
 <p>
 In SOAP 1.2 the <i>env:actor</i> attribute is replaced by the <i>env:role</i>
 attribute, but with essentially the same semantics.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>actor</code> - a <code>String</code> giving the URI of the <code>actor</code> / <code>role</code>
        for which to search</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an <code>Iterator</code> object over all the
         <code>SOAPHeaderElement</code> objects that contain the specified
          <code>actor</code> / <code>role</code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../jakarta/xml/soap/SOAPHeader.html#extractHeaderElements-java.lang.String-"><code>extractHeaderElements(java.lang.String)</code></a>, 
<a href="../../../jakarta/xml/soap/SOAPConstants.html#URI_SOAP_ACTOR_NEXT"><code>SOAPConstants.URI_SOAP_ACTOR_NEXT</code></a></dd>
</dl>
</li>
</ul>
<a name="extractHeaderElements-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>extractHeaderElements</h4>
<pre>java.util.Iterator&lt;<a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&gt;&nbsp;extractHeaderElements(java.lang.String&nbsp;actor)</pre>
<div class="block">Returns an <code>Iterator</code> over all the <code>SOAPHeaderElement</code> objects
 in this <code>SOAPHeader</code> object
 that have the specified <i>actor</i> and detaches them
 from this <code>SOAPHeader</code> object.
 <P>
 This method allows an actor to process the parts of the
 <code>SOAPHeader</code> object that apply to it and to remove
 them before passing the message on to the next actor.
 <p>
 In SOAP 1.2 the <i>env:actor</i> attribute is replaced by the <i>env:role</i>
 attribute, but with essentially the same semantics.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>actor</code> - a <code>String</code> giving the URI of the <code>actor</code> / <code>role</code>
        for which to search</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an <code>Iterator</code> object over all the
         <code>SOAPHeaderElement</code> objects that contain the specified
          <code>actor</code> / <code>role</code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../jakarta/xml/soap/SOAPHeader.html#examineHeaderElements-java.lang.String-"><code>examineHeaderElements(java.lang.String)</code></a>, 
<a href="../../../jakarta/xml/soap/SOAPConstants.html#URI_SOAP_ACTOR_NEXT"><code>SOAPConstants.URI_SOAP_ACTOR_NEXT</code></a></dd>
</dl>
</li>
</ul>
<a name="addNotUnderstoodHeaderElement-javax.xml.namespace.QName-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addNotUnderstoodHeaderElement</h4>
<pre><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&nbsp;addNotUnderstoodHeaderElement(javax.xml.namespace.QName&nbsp;name)
                                         throws <a href="../../../jakarta/xml/soap/SOAPException.html" title="class in jakarta.xml.soap">SOAPException</a></pre>
<div class="block">Creates a new NotUnderstood <code>SOAPHeaderElement</code> object initialized
 with the specified name and adds it to this <code>SOAPHeader</code> object.
 This operation is supported only by SOAP 1.2.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - a <code>QName</code> object with the name of the
        <code>SOAPHeaderElement</code> object that was not understood.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the new <code>SOAPHeaderElement</code> object that was
          inserted into this <code>SOAPHeader</code> object</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../jakarta/xml/soap/SOAPException.html" title="class in jakarta.xml.soap">SOAPException</a></code> - if a SOAP error occurs.</dd>
<dd><code>java.lang.UnsupportedOperationException</code> - if this is a SOAP 1.1 Header.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.6, SAAJ 1.3</dd>
</dl>
</li>
</ul>
<a name="addUpgradeHeaderElement-java.util.Iterator-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addUpgradeHeaderElement</h4>
<pre><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&nbsp;addUpgradeHeaderElement(java.util.Iterator&lt;java.lang.String&gt;&nbsp;supportedSOAPURIs)
                                   throws <a href="../../../jakarta/xml/soap/SOAPException.html" title="class in jakarta.xml.soap">SOAPException</a></pre>
<div class="block">Creates a new Upgrade <code>SOAPHeaderElement</code> object initialized
 with the specified List of supported SOAP URIs and adds it to this
 <code>SOAPHeader</code> object.
 This operation is supported on both SOAP 1.1 and SOAP 1.2 header.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>supportedSOAPURIs</code> - an <code>Iterator</code> object with the URIs of SOAP
          versions supported.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the new <code>SOAPHeaderElement</code> object that was
          inserted into this <code>SOAPHeader</code> object</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../jakarta/xml/soap/SOAPException.html" title="class in jakarta.xml.soap">SOAPException</a></code> - if a SOAP error occurs.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.6, SAAJ 1.3</dd>
</dl>
</li>
</ul>
<a name="addUpgradeHeaderElement-java.lang.String:A-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addUpgradeHeaderElement</h4>
<pre><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&nbsp;addUpgradeHeaderElement(java.lang.String[]&nbsp;supportedSoapUris)
                                   throws <a href="../../../jakarta/xml/soap/SOAPException.html" title="class in jakarta.xml.soap">SOAPException</a></pre>
<div class="block">Creates a new Upgrade <code>SOAPHeaderElement</code> object initialized
 with the specified array of supported SOAP URIs and adds it to this
 <code>SOAPHeader</code> object.
 This operation is supported on both SOAP 1.1 and SOAP 1.2 header.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>supportedSoapUris</code> - an array of the URIs of SOAP versions supported.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the new <code>SOAPHeaderElement</code> object that was
          inserted into this <code>SOAPHeader</code> object</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../jakarta/xml/soap/SOAPException.html" title="class in jakarta.xml.soap">SOAPException</a></code> - if a SOAP error occurs.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.6, SAAJ 1.3</dd>
</dl>
</li>
</ul>
<a name="addUpgradeHeaderElement-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addUpgradeHeaderElement</h4>
<pre><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&nbsp;addUpgradeHeaderElement(java.lang.String&nbsp;supportedSoapUri)
                                   throws <a href="../../../jakarta/xml/soap/SOAPException.html" title="class in jakarta.xml.soap">SOAPException</a></pre>
<div class="block">Creates a new Upgrade <code>SOAPHeaderElement</code> object initialized
 with the specified supported SOAP URI and adds it to this
 <code>SOAPHeader</code> object.
 This operation is supported on both SOAP 1.1 and SOAP 1.2 header.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>supportedSoapUri</code> - the URI of SOAP the version that is supported.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the new <code>SOAPHeaderElement</code> object that was
          inserted into this <code>SOAPHeader</code> object</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../jakarta/xml/soap/SOAPException.html" title="class in jakarta.xml.soap">SOAPException</a></code> - if a SOAP error occurs.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.6, SAAJ 1.3</dd>
</dl>
</li>
</ul>
<a name="examineAllHeaderElements--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>examineAllHeaderElements</h4>
<pre>java.util.Iterator&lt;<a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&gt;&nbsp;examineAllHeaderElements()</pre>
<div class="block">Returns an <code>Iterator</code> over all the <code>SOAPHeaderElement</code> objects
 in this <code>SOAPHeader</code> object.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an <code>Iterator</code> object over all the
          <code>SOAPHeaderElement</code> objects contained by this
          <code>SOAPHeader</code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.6, SAAJ 1.2</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../jakarta/xml/soap/SOAPHeader.html#extractAllHeaderElements--"><code>extractAllHeaderElements()</code></a></dd>
</dl>
</li>
</ul>
<a name="extractAllHeaderElements--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>extractAllHeaderElements</h4>
<pre>java.util.Iterator&lt;<a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap">SOAPHeaderElement</a>&gt;&nbsp;extractAllHeaderElements()</pre>
<div class="block">Returns an <code>Iterator</code> over all the <code>SOAPHeaderElement</code> objects
 in this <code>SOAPHeader</code> object and detaches them
 from this <code>SOAPHeader</code> object.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an <code>Iterator</code> object over all the
          <code>SOAPHeaderElement</code> objects contained by this
          <code>SOAPHeader</code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.6, SAAJ 1.2</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../jakarta/xml/soap/SOAPHeader.html#examineAllHeaderElements--"><code>examineAllHeaderElements()</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="../../../jakarta/xml/soap/SOAPFaultElement.html" title="interface in jakarta.xml.soap"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../jakarta/xml/soap/SOAPHeaderElement.html" title="interface in jakarta.xml.soap"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?jakarta/xml/soap/SOAPHeader.html" target="_top">Frames</a></li>
<li><a href="SOAPHeader.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>
