public abstract class SOAPMessage extends Object
一个SOAPMessage
对象由肥皂和任选的一个或多个附件配件。一SOAPMessage
对象肥皂的一部分是SOAPPart
对象,其中包含用于消息路由和识别信息,它可以包含特定于应用程序的内容。消息的SOAP部分中的所有数据必须是XML格式的。
一个新的SOAPMessage
对象包含以下默认:
SOAPPart
对象SOAPEnvelope
对象SOAPBody
对象SOAPHeader
对象SOAPMessage.getSOAPPart()
检索,
SOAPEnvelope
对象从
SOAPPart
对象检索,和
SOAPEnvelope
对象用于检索
SOAPBody
和
SOAPHeader
对象。
soappart SP =消息。getsoappart();soapenvelope SE = sp. getenvelope();某人getbody()配糖体本身;soapheader SH = getheader() SE;
除了强制性SOAPPart
对象,一个SOAPMessage
对象可能包含零个或多个AttachmentPart
对象,其中每个都包含特定于应用程序的数据。的SOAPMessage
接口提供了用于创建AttachmentPart
对象并将它们添加到一个SOAPMessage
对象的方法。一个党,已经收到了SOAPMessage
对象可以通过检索单个附件部分审查其内容。
与SOAP消息的其余部分不同,不需要附件是XML格式的,因此可以将任何东西从简单的文本到图像文件。因此,任何信息的内容是不是基于XML格式的必须在一个AttachmentPart
对象。
一个MessageFactory
对象可以创建对象的行为SOAPMessage
是专门的用于特定的实现和应用。例如,一个MessageFactory
对象可能产生SOAPMessage
对象符合一个特定的配置文件如ebXML。在这种情况下,MessageFactory
对象可能产生SOAPMessage
对象与ebXML头初始化。
为了保证向后兼容性的方法,源码,1.1版SAAJ规范后加入这类都是具体的而不是抽象的,它们都有默认的实现。除非另有说明,在javadocs那些方法的默认实现简单地抛出一个UnsupportedOperationException
和用于实现代码必须超越他们的方法,提供指定的行为。传统的客户端代码没有这个限制,但是,只要有没有索赔,它符合一些后来的版本的规范比它最初是为。遗产类扩展SOAP消息类可以编译和/或对成功的用于API没有修改的版本。如果这样的一个类被正确地实现,那么它将继续表现正确的相对于它所写的规范的版本。
MessageFactory
,
AttachmentPart
Modifier and Type | Field and Description |
---|---|
static String |
CHARACTER_SET_ENCODING
指定用于为“肥皂”消息的字符类型编码。
|
static String |
WRITE_XML_DECLARATION
指定SOAP消息是否在发送时包含一个XML声明。
|
Constructor and Description |
---|
SOAPMessage() |
Modifier and Type | Method and Description |
---|---|
abstract void |
addAttachmentPart(AttachmentPart AttachmentPart)
由于增加了
AttachmentPart 反对这
SOAPMessage 对象。
|
abstract int |
countAttachments()
获取此邮件中附件的数量的计数。
|
abstract AttachmentPart |
createAttachmentPart()
创建新的空
AttachmentPart 对象。
|
AttachmentPart |
createAttachmentPart(DataHandler dataHandler)
创建一个
AttachmentPart 对象并填充使用给定的
DataHandler 对象。
|
AttachmentPart |
createAttachmentPart(Object content, String contentType)
创建一个
AttachmentPart 对象和填充它与指定的内容类型指定的数据。
|
abstract AttachmentPart |
getAttachment(SOAPElement element)
返回一个对象,
AttachmentPart 带有附件,是引用的
SOAPElement 或
null 如果没有这样的连接存在关联。
|
abstract Iterator |
getAttachments()
检索所有
AttachmentPart 对象,这个对象的一部分,
SOAPMessage 。
|
abstract Iterator |
getAttachments(MimeHeaders headers)
检索所有有头项符合指定的头
AttachmentPart 对象。
|
abstract String |
getContentDescription()
描述这
SOAPMessage 检索对象的内容。
|
abstract MimeHeaders |
getMimeHeaders()
返回所有传输特定MIME标头这
SOAPMessage 对象传输独立的时尚。
|
Object |
getProperty(String property)
检索指定属性的值。
|
SOAPBody |
getSOAPBody()
获取包含在这
SOAPMessage 对象的皂体。
|
SOAPHeader |
getSOAPHeader()
获取包含在这
SOAPMessage 对象的SOAP标头。
|
abstract SOAPPart |
getSOAPPart()
得到这
SOAPMessage 对象肥皂的一部分。
|
abstract void |
removeAllAttachments()
删除已被添加到该对象的所有对象
SOAPMessage
AttachmentPart 。
|
abstract void |
removeAttachments(MimeHeaders headers)
删除所有有头项符合指定的头
AttachmentPart 对象。
|
abstract void |
saveChanges()
这
SOAPMessage 更新对象的所有更改了它。
|
abstract boolean |
saveRequired()
指示此
SOAPMessage 对象需要有方法
saveChanges 呼吁它。
|
abstract void |
setContentDescription(String description)
与给定的描述这
SOAPMessage 对象内容的描述集。
|
void |
setProperty(String property, Object value)
将指定的值与指定的属性关联。
|
abstract void |
writeTo(OutputStream out)
写这
SOAPMessage 对象到给定的输出流。
|
public static final String CHARACTER_SET_ENCODING
SOAPMessage.setProperty
,
Constant Field Values
public static final String WRITE_XML_DECLARATION
SOAPMessage.setProperty
,
Constant Field Values
public abstract void setContentDescription(String description)
SOAPMessage
对象内容的描述集。
description
-
String
描述该邮件的内容
getContentDescription()
public abstract String getContentDescription()
SOAPMessage
检索对象的内容。
String
描述此消息或
null
内容如果没有描述已定
setContentDescription(java.lang.String)
public abstract SOAPPart getSOAPPart()
SOAPMessage
对象肥皂的一部分。
SOAPMessage
对象包含一个或多个附件,肥皂部分必须在消息第一个MIME正文部分。
SOAPMessage
对象的
SOAPPart
对象
public SOAPBody getSOAPBody() throws SOAPException
SOAPMessage
对象的皂体。
SOAPMessage
SOAPBody
对象包含对象
SOAPException
如果皂体不存在或无法检索
public SOAPHeader getSOAPHeader() throws SOAPException
SOAPMessage
对象的SOAP标头。
SOAPMessage
SOAPHeader
对象包含对象
SOAPException
如果SOAP标头不存在或无法检索
public abstract void removeAllAttachments()
AttachmentPart
对象已被添加到这个
SOAPMessage
对象。
此方法不触及肥皂部分。
public abstract int countAttachments()
AttachmentPart
的对象,这个对象的一部分,
SOAPMessage
数
public abstract Iterator getAttachments()
AttachmentPart
对象,这个对象的一部分,
SOAPMessage
。
public abstract Iterator getAttachments(MimeHeaders headers)
AttachmentPart
对象。请注意,返回的附件可以有头文件,除了那些指定的。
headers
-含有的MIME标头搜索
MimeHeaders
对象
public abstract void removeAttachments(MimeHeaders headers)
AttachmentPart
对象。请注意,删除附件可以有头,除了那些指定。
headers
-含有的MIME标头搜索
MimeHeaders
对象
public abstract AttachmentPart getAttachment(SOAPElement element) throws SOAPException
SOAPElement
或
null
如果没有这样的连接存在相关
AttachmentPart
对象。引用可以通过一个
href
属性描述
SOAP Messages with Attachments,或通过一个单一的
Text
子节点包含一个URI描述WS-I附件概要1图式型
ref:swaRef元素。这两种机制必须予以支持。引用通过
href
支持属性也意味着该方法也应支持在一个元素是一个XOP:包括元(
XOP)。其他参考机制可能由本标准的个别实现支持。联系您的供应商的细节。
element
-包含附件的参考
SOAPElement
AttachmentPart
或空如果没有这样的
AttachmentPart
存在或没有可参考本
SOAPElement
发现。
SOAPException
-如果在尝试访问附件有错误
public abstract void addAttachmentPart(AttachmentPart AttachmentPart)
AttachmentPart
反对这
SOAPMessage
对象。一个
AttachmentPart
对象必须被创建之前就可以被添加到一个消息。
AttachmentPart
-即成为本
SOAPMessage
对象的一部分
AttachmentPart
对象
IllegalArgumentException
public abstract AttachmentPart createAttachmentPart()
AttachmentPart
对象。注意,该方法
addAttachmentPart
必须调用这个新的
AttachmentPart
对象作为它成为附件本
SOAPMessage
对象为参数。
AttachmentPart
对象,可以填充和添加到这个
SOAPMessage
对象
public AttachmentPart createAttachmentPart(DataHandler dataHandler)
AttachmentPart
对象并填充使用给定的
DataHandler
对象。
dataHandler
-
javax.activation.DataHandler
对象将生成此
SOAPMessage
对象的内容
AttachmentPart
对象包含了
DataHandler
对象生成的数据
IllegalArgumentException
-如果有指定的
DataHandler
对象问题
DataHandler
,
DataContentHandler
public abstract MimeHeaders getMimeHeaders()
SOAPMessage
对象传输独立的时尚。
MimeHeader
对象
MimeHeaders
对象
public AttachmentPart createAttachmentPart(Object content, String contentType)
AttachmentPart
对象和填充它与指定的内容类型指定的数据。
Object
的类型应符合给定的
Content-Type
价值。
content
-
Object
的
AttachmentPart
包含要创建的对象的内容
contentType
-
String
对象内容的类型;例如“text/xml”、“text/plain”、和“image/jpeg”
AttachmentPart
对象包含给定的数据
IllegalArgumentException
可能如果contentType不的内容对象的类型匹配抛出,或如果有给定的内容对象没有
DataContentHandler
对象
DataHandler
,
DataContentHandler
public abstract void saveChanges() throws SOAPException
SOAPMessage
更新对象的所有更改了它。这种方法被称为自动时,
writeTo(OutputStream)
叫做。然而,如果一个信息被接收或发送一个已经变化,该方法
saveChanges
需要显式地调用以保存更改。方法
saveChanges
也产生任何变化,可以回读(例如,一个配置文件,支持消息的messageId在ID)。在消息发送的目的是创建的所有MIME标头是保证只有在
saveChanges
被称为有效值。
此外,这种方法是从AttachmentPart
点所有组成对象的数据拉到消息。
SOAPException
-如果有问题保存此消息。
SOAPException
public abstract boolean saveRequired()
SOAPMessage
对象需要对它的方法有
saveChanges
叫。
true
如果
saveChanges
需要叫;
false
否则。
public abstract void writeTo(OutputStream out) throws SOAPException, IOException
SOAPMessage
对象到给定的输出流。外化的格式由SOAP 1.1规范定义与附件。
如果没有附件,只是写了一个XML流。这些邮件有附件,writeTo
写一个MIME编码的字节流。
请注意,此方法不写具体的传输消息的MIME标头
out
-
OutputStream
对象,这个对象将被写
SOAPMessage
IOException
如果I/O错误发生
SOAPException
-如果有外在这个SOAP消息的问题
public void setProperty(String property, Object value) throws SOAPException
有效的属性名称包括WRITE_XML_DECLARATION
和CHARACTER_SET_ENCODING
。所有这些标准用于属性前缀“javax. XML,SOAP”。供应商也可以添加实现特定属性。这些属性的前缀必须是唯一的供应商的软件包名称。
设置属性WRITE_XML_DECLARATION
到"true"
会导致XML声明是写在SOAP消息的开始。“假”的默认值将抑制此声明。
该属性的默认值CHARACTER_SET_ENCODING
"utf-8"
使SOAP消息被编码使用UTF-8。设置CHARACTER_SET_ENCODING
到"utf-16"
使SOAP消息是使用UTF-16编码。
一些实现可能允许除UTF-8和UTF-16编码。请参阅您的供应商的详细资料。
property
与指定的值是相关联的属性。
value
要用指定的属性关联的值
SOAPException
-如果属性名是不被认可的。
public Object getProperty(String property) throws SOAPException
property
-属性的名称检索
null
如果没有这样的属性存在关联的值。
SOAPException
-如果属性名是不被认可的。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.