- java.lang.Object
-
- javax.xml.soap.SOAPPart
-
public abstract class SOAPPart extends Object implements Document, Node
用于SOAPMessage
对象的SOAP特定部分的SOAPMessage
。 所有消息都需要具有SOAP部分,因此当创建一个SOAPMessage
对象时,它将自动具有一个SOAPPart
对象。一个
SOAPPart
对象是MIME部分,并具有MIME标头Content-Id,Content-Location和Content-Type。 因为Content-Type的值必须是“text / xml”,所以SOAPPart
对象自动具有Content-Type的MIME标题,其值设置为“text / xml”。 该值必须为“text / xml”,因为消息的SOAP部分中的内容必须是XML格式。 不是“text / xml”类型的内容必须在AttachmentPart
对象中,而不是在SOAPPart
对象中。发送消息时,其SOAP部分必须将MIME头的Content-Type设置为“text / xml”。 或者从另一角度看,接收的任何消息的SOAP部分必须具有值为“text / xml”的MIME头Content-Type。
客户端可以通过调用方法
SOAPMessage.getSOAPPart
访问SOAPPart
对象的SOAPMessage
对象。 以下代码行(其中message
是一个SOAPMessage
对象)检索消息的SOAP部分。SOAPPart soapPart = message.getSOAPPart();
一个
SOAPPart
对象包含一个SOAPEnvelope
对象,它又包含一个SOAPBody
对象和一个SOAPHeader
对象。SOAPPart
方法getEnvelope
可用于检索SOAPEnvelope
对象。- 从以下版本开始:
- 1.6
-
-
Field Summary
-
Fields inherited from interface 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
-
-
构造方法摘要
构造方法 Constructor 描述 SOAPPart()
-
方法摘要
所有方法 接口方法 抽象方法 具体的方法 Modifier and Type 方法 描述 abstract void
addMimeHeader(String name, String value)
创建MimeHeader
具有指定名称和值对象,并将其添加到这个SOAPPart
对象。abstract Iterator<MimeHeader>
getAllMimeHeaders()
检索这一切的头SOAPPart
对象为在一个迭代MimeHeader
对象。abstract Source
getContent()
以JAXPSource
对象的形式返回SOAPEnvelope的内容。String
getContentId()
检索名称为“Content-Id”的MIME标头的值。String
getContentLocation()
检索名称为“Content-Location”的MIME标头的值。abstract SOAPEnvelope
getEnvelope()
获取SOAPEnvelope
与此相关联的对象SOAPPart
对象。abstract Iterator<MimeHeader>
getMatchingMimeHeaders(String[] names)
检索与给定数组中的名称相匹配的所有MimeHeader
对象。abstract String[]
getMimeHeader(String name)
获取的所有值MimeHeader
在这个对象SOAPPart
对象由给定的标识String
。abstract Iterator<MimeHeader>
getNonMatchingMimeHeaders(String[] names)
检索名称与给定数组中的名称不匹配的所有MimeHeader
对象。abstract void
removeAllMimeHeaders()
删除所有MimeHeader
此对象SOAPEnvelope
对象。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)
更改与给定标题名称匹配的第一个标题条目,以使其值为给定值,如果没有现有标题匹配,则添加具有给定名称和值的新标题。-
Methods inherited from interface 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
-
Methods inherited from interface javax.xml.soap.Node
detachNode, getParentElement, getValue, recycleNode, setParentElement, setValue
-
Methods inherited from interface 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
-
-
-
-
方法详细信息
-
getEnvelope
public abstract SOAPEnvelope getEnvelope() throws SOAPException
获取SOAPEnvelope
与此相关联的对象SOAPPart
对象。 一旦获得了SOAP信封,就可以使用它来获取它的内容。- 结果
-
该
SOAPEnvelope
对象为此SOAPPart
对象 - 异常
-
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
给出MIME头的值,名称为“Content-Location” - 另请参见:
-
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()
删除所有MimeHeader
此对象SOAPEnvelope
对象。
-
getMimeHeader
public abstract String[] getMimeHeader(String name)
获取的所有值MimeHeader
在这个对象SOAPPart
对象由给定的标识String
。- 参数
-
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<MimeHeader> getAllMimeHeaders()
检索这一切的头SOAPPart
对象为在一个迭代MimeHeader
对象。- 结果
-
一个
Iterator
对象所有MIME头的这个SOAPPart
对象
-
getMatchingMimeHeaders
public abstract Iterator<MimeHeader> getMatchingMimeHeaders(String[] names)
检索与给定数组中的名称相匹配的所有MimeHeader
对象。- 参数
-
names
- 具有要返回的MIME标题的名称的String
数组 - 结果
-
与给定数组中的一个名称匹配的所有MIME标头都作为一个
Iterator
对象返回
-
getNonMatchingMimeHeaders
public abstract Iterator<MimeHeader> getNonMatchingMimeHeaders(String[] names)
检索名称与给定数组中的名称不匹配的所有MimeHeader
对象。- 参数
-
names
- 一个String
数组,其MIME标题的名称不被返回 - 结果
-
此
SOAPPart
对象中的所有MIME标头,除了与给定数组中的一个名称相匹配的对象。 不匹配的MIME标题作为Iterator
对象返回。
-
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
以JAXPSource
对象的形式返回SOAPEnvelope的内容。- 结果
-
内容为
javax.xml.transform.Source
对象 - 异常
-
SOAPException
- 如果实现不能转换指定的Source
对象 - 另请参见:
-
setContent(javax.xml.transform.Source)
-
-