JavaTM 2 Platform
Standard Ed. 6

javax.xml.soap
類別 SOAPPart

java.lang.Object
  繼承者 javax.xml.soap.SOAPPart
所有已實作的介面:
Document, Node

public abstract class SOAPPart
extends Object
implements Document, Node

SOAPMessage 物件中特定於 SOAP 部分的容器。所有訊息都必須有一個 SOAP 部分,因此 SOAPMessage 物件在創建之後將自動獲得一個 SOAPPart 物件。

SOAPPart 物件是一個 MIME 部分,並具有 MIME 頭 Content-Id、Content-Location 和 Content-Type。因為 Content-Type 的值必須為 "text/xml",所以 SOAPPart 物件自動獲得 Content-Type 的 MIME 頭,且 Content-Type 值已設置為 "text/xml"。訊息 SOAP 部分中的所有資料都必須是 XML 格式,因此值必須為 "text/xml"。不是 "text/xml" 型別的內容不能在 SOAPPart 物件中,而必須在 AttachmentPart 物件中。

發送訊息時,其 SOAP 部分必須將 MIME 頭 Content-Type 設置為 "text/xml"。或者換個角度來說,已收到訊息的 SOAP 部分必須具有值為 "text/xml" 的 MIME 頭 Content-Type。

客戶端可以通過調用方法 SOAPMessage.getSOAPPart 來存取 SOAPMessage 物件的 SOAPPart 物件。以下程式碼行(其中 message 是一個 SOAPMessage 物件)檢索訊息的 SOAP 部分。

SOAPPart soapPart = message.getSOAPPart();
 

SOAPPart 物件包含一個 SOAPEnvelope 物件,SOAPEnvelope 物件包含一個 SOAPBody 物件和一個 SOAPHeader 物件。SOAPPartgetEnvelope 方法可以用於檢索 SOAPEnvelope 物件。


欄位摘要
 
從介面 org.w3c.dom.Node 繼承的欄位
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
 
建構子摘要
SOAPPart()
           
 
方法摘要
abstract  void addMimeHeader(String name, String value)
          使用指定名稱和值創建 MimeHeader 物件,並將其添加到此 SOAPPart 物件。
abstract  Iterator getAllMimeHeaders()
          以可在 MimeHeader 物件上進行迭代的迭代器形式,檢索此 SOAPPart 物件的所有頭。
abstract  Source getContent()
          以 JAXP Source 物件的形式返回 SOAPEnvelope 的內容。
 String getContentId()
          檢索名為 "Content-Id" 的 MIME 頭的值。
 String getContentLocation()
          檢索名為 "Content-Location" 的 MIME 頭的值。
abstract  SOAPEnvelope getEnvelope()
          獲取與此 SOAPPart 物件關聯的 SOAPEnvelope 物件。
abstract  Iterator getMatchingMimeHeaders(String[] names)
          檢索與給定陣列中的名稱比對的所有 MimeHeader 物件。
abstract  String[] getMimeHeader(String name)
          獲取此 SOAPPart 物件中所有由給定 String 標識的 MimeHeader 物件的值。
abstract  Iterator getNonMatchingMimeHeaders(String[] names)
          檢索名稱與給定陣列中任一名稱不比對的所有 MimeHeader 物件。
abstract  void removeAllMimeHeaders()
          移除此 SOAPEnvelope 物件的所有 MimeHeader 物件。
abstract  void removeMimeHeader(String header)
          移除所有與給定名稱比對的 MIME 頭。
abstract  void setContent(Source source)
          使用取自給定 Source 物件的資料設置 SOAPEnvelope 物件的內容。
 void setContentId(String contentId)
          將名為 "Content-Id" 的 MIME 頭的值設置為給定 String
 void setContentLocation(String contentLocation)
          將 MIME 頭 "Content-Location" 的值設置為給定 String
abstract  void setMimeHeader(String name, String value)
          將與給定頭名稱比對的第一個頭條目的值更改為給定值,如果現有頭都不比對,則添加一個帶有給定名稱和值的新頭。
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
從介面 org.w3c.dom.Document 繼承的方法
adoptNode, createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEntityReference, createProcessingInstruction, createTextNode, getDoctype, getDocumentElement, getDocumentURI, getDomConfig, getElementById, getElementsByTagName, getElementsByTagNameNS, getImplementation, getInputEncoding, getStrictErrorChecking, getXmlEncoding, getXmlStandalone, getXmlVersion, importNode, normalizeDocument, renameNode, setDocumentURI, setStrictErrorChecking, setXmlStandalone, setXmlVersion
 
從介面 javax.xml.soap.Node 繼承的方法
detachNode, getParentElement, getValue, recycleNode, setParentElement, setValue
 
從介面 org.w3c.dom.Node 繼承的方法
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
 

建構子詳細資訊

SOAPPart

public SOAPPart()
方法詳細資訊

getEnvelope

public abstract SOAPEnvelope getEnvelope()
                                  throws SOAPException
獲取與此 SOAPPart 物件關聯的 SOAPEnvelope 物件。獲取 SOAP 信封後,可以用此方法來獲取它的內容。

返回:
SOAPPart 物件的 SOAPEnvelope 物件
拋出:
SOAPException - 如果存在 SOAP 錯誤

getContentId

public String getContentId()
檢索名為 "Content-Id" 的 MIME 頭的值。

返回:
一個 String,給出名為 "Content-Id" 的 MIME 頭的值
另請參見:
setContentId(java.lang.String)

getContentLocation

public String getContentLocation()
檢索名為 "Content-Location" 的 MIME 頭的值。

返回:
一個 String,給出名為 "Content-Location" 的 MIME 頭的值
另請參見:
setContentLocation(java.lang.String)

setContentId

public void setContentId(String contentId)
將名為 "Content-Id" 的 MIME 頭的值設置為給定 String

參數:
contentId - 一個 String,給出 MIME 頭 "Content-Id" 的值
拋出:
IllegalArgumentException - 如果在設置內容 id 時出現問題
另請參見:
getContentId()

setContentLocation

public void setContentLocation(String contentLocation)
將 MIME 頭 "Content-Location" 的值設置為給定 String

參數:
contentLocation - 一個 String,給出 MIME 頭 "Content-Location" 的值
拋出:
IllegalArgumentException - 如果在設置內容位置時出現問題。
另請參見:
getContentLocation()

removeMimeHeader

public abstract void removeMimeHeader(String header)
移除所有與給定名稱比對的 MIME 頭。

參數:
header - 一個 String,給出要移除的 MIME 頭的名稱

removeAllMimeHeaders

public abstract void removeAllMimeHeaders()
移除此 SOAPEnvelope 物件的所有 MimeHeader 物件。


getMimeHeader

public abstract String[] getMimeHeader(String name)
獲取此 SOAPPart 物件中所有由給定 String 標識的 MimeHeader 物件的值。

參數:
name - 頭的名稱;範例:"Content-Type"
返回:
一個 String 陣列,給出所有指定頭的值
另請參見:
setMimeHeader(java.lang.String, java.lang.String)

setMimeHeader

public abstract void setMimeHeader(String name,
                                   String value)
將與給定頭名稱比對的第一個頭條目的值更改為給定值,如果現有頭都不比對,則添加一個帶有給定名稱和值的新頭。如果有比對的頭,則此方法清除第一個比對頭的所有現有值,並設置為給定的值。如果多個頭都具有給定名稱,則此方法移除第一個比對頭之後的所有比對頭。

注意,RFC822 頭只能包含 US-ASCII 字元。

參數:
name - 一個 String,給出要搜尋的頭的名稱
value - 一個 String,給出要設置的值。此值將替換第一個比對頭(如果有)的當前值。如果沒有比對的頭,則此值將是新 MimeHeader 物件的值。
拋出:
IllegalArgumentException - 如果指定的 mime 頭名稱或值存在問題
另請參見:
getMimeHeader(java.lang.String)

addMimeHeader

public abstract void addMimeHeader(String name,
                                   String value)
使用指定名稱和值創建 MimeHeader 物件,並將其添加到此 SOAPPart 物件。如果已經存在帶有指定名稱的 MimeHeader,則此方法將指定值添加到已經存在的值中。

注意,RFC822 頭只能包含 US-ASCII 字元。

參數:
name - 一個 String,給出頭名稱
value - 一個 String,給出要設置或要添加的值
拋出:
IllegalArgumentException - 如果指定的 mime 頭名稱或值存在問題

getAllMimeHeaders

public abstract Iterator getAllMimeHeaders()
以可在 MimeHeader 物件上進行迭代的迭代器形式,檢索此 SOAPPart 物件的所有頭。

返回:
一個 Iterator 物件,具有此 SOAPPart 物件的所有 Mime 頭

getMatchingMimeHeaders

public abstract Iterator getMatchingMimeHeaders(String[] names)
檢索與給定陣列中的名稱比對的所有 MimeHeader 物件。

參數:
names - 一個 String 陣列,帶有要返回的 Mime 頭的名稱
返回:
Iterator 物件形式返回的與給定陣列中任一名稱比對的所有 MIME 頭

getNonMatchingMimeHeaders

public abstract Iterator getNonMatchingMimeHeaders(String[] names)
檢索名稱與給定陣列中任一名稱不比對的所有 MimeHeader 物件。

參數:
names - 一個 String 陣列,帶有不要返回的 Mime 頭的名稱
返回:
SOAPPart 物件中與給定陣列中任一名稱比對的 MIME 頭之外的所有 MIME 頭。以 Iterator 物件的形式返回不比對的 MIME 頭。

setContent

public abstract void setContent(Source source)
                         throws SOAPException
使用取自給定 Source 物件的資料設置 SOAPEnvelope 物件的內容。此 Source 必須包含一個有效的 SOAP 文檔。

參數:
source - javax.xml.transform.Source 物件,帶有要發送的資料
拋出:
SOAPException - 如果在設置源時出現錯誤。
另請參見:
getContent()

getContent

public abstract Source getContent()
                           throws SOAPException
以 JAXP Source 物件的形式返回 SOAPEnvelope 的內容。

返回:
javax.xml.transform.Source 物件形式的內容
拋出:
SOAPException - 如果實作無法轉換指定的 Source 物件
另請參見:
setContent(javax.xml.transform.Source)

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only