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.