java.lang.Object javax.xml.soap.SOAPFactory
public abstract class SOAPFactory
SOAPFactory
是用来创建存在于 SOAP XML 树中的各种对象的工厂。SOAPFactory
可以用于创建最终成为 SOAP 部分的 XML 片段。这些片段可以作为 SOAPHeaderElement
、SOAPBodyElement
、SOAPEnvelope
或其他 SOAPElement
对象的子级插入。SOAPFactory
还具有创建 javax.xml.soap.Detail
对象以及 java.xml.soap.Name
对象的方法。
构造方法摘要 | |
---|---|
SOAPFactory() |
方法摘要 | |
---|---|
abstract Detail |
createDetail() 创建充当 DetailEntry 对象容器的新 Detail 对象。 |
SOAPElement |
createElement(Element domElement) 根据现有的 DOM Element 创建 SOAPElement 对象。 |
abstract SOAPElement |
createElement(Name name) 创建使用给定 Name 对象初始化的 SOAPElement 对象。 |
SOAPElement |
createElement(QName qname) 创建使用给定 QName 对象初始化的 SOAPElement 对象。 |
abstract SOAPElement |
createElement(String localName) 创建使用给定本地名称初始化的 SOAPElement 对象。 |
abstract SOAPElement |
createElement(String localName, String prefix, String uri) 使用本地名称、前缀和 URI 创建新的 SOAPElement 对象。 |
abstract SOAPFault |
createFault() 创建一个新的默认 SOAPFault 对象 |
abstract SOAPFault |
createFault(String reasonText, QName faultCode) 创建使用给定 reasonText 和 faultCode 初始化的新 SOAPFault 对象 |
abstract Name |
createName(String localName) 创建使用给定本地名称初始化的新 Name 对象。 |
abstract Name |
createName(String localName, String prefix, String uri) 创建使用给定本地名称、名称空间前缀和名称空间 URI 初始化的新 Name 对象。 |
static SOAPFactory |
newInstance() 创建新的 SOAPFactory 对象,该对象是默认实现 (SOAP 1.1) 的实例。 |
static SOAPFactory |
newInstance(String protocol) 创建新的 SOAPFactory 对象,该对象是指定实现的实例,此方法使用 SAAJMetaFactory 来定位实现类并创建 SOAPFactory 实例。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
public SOAPFactory()
方法详细信息 |
---|
public SOAPElement createElement(Element domElement) throws SOAPException
Element
创建
SOAPElement
对象。如果作为参数传入的 DOM
Element
已经是一个
SOAPElement
,那么此方法必须不作任何修改地返回该参数。否则,会创建新的
SOAPElement
并进行此
domElement
参数的深层复制。返回值的具体类型将取决于
domElement
参数的名称。如果以
domElement
为根的树的任何部分违背了 SOAP 规则,则会抛出
SOAPException
。
domElement
- 要复制的
Element
。
SOAPElement
,它是
domElement
的副本。
SOAPException
- 如果在创建
SOAPElement
对象时存在错误
public abstract SOAPElement createElement(Name name) throws SOAPException
Name
对象初始化的
SOAPElement
对象。返回值的具体类型将取决于提供给新
SOAPElement
的名称。例如,一个带有名称 "{http://www.w3.org/2003/05/soap-envelope}Envelope" 的新
SOAPElement
会导致创建支持 SOAP 1.2 行为的
SOAPEnvelope
。
name
- 带有新元素 XML 名称的
Name
对象
SOAPElement
对象
SOAPException
- 如果在创建
SOAPElement
对象时出现错误
createElement(javax.xml.namespace.QName)
public SOAPElement createElement(QName qname) throws SOAPException
QName
对象初始化的
SOAPElement
对象。返回值的具体类型将取决于提供给新
SOAPElement
的名称。例如,一个带有名称 "{http://www.w3.org/2003/05/soap-envelope}Envelope" 的新
SOAPElement
会导致创建支持 SOAP 1.2 行为的
SOAPEnvelope
。
qname
- 带有新元素 XML 名称的
QName
对象
SOAPElement
对象
SOAPException
- 如果在创建
SOAPElement
对象时出现错误
createElement(Name)
public abstract SOAPElement createElement(String localName) throws SOAPException
SOAPElement
对象。
localName
- 给出新元素本地名称的
String
SOAPElement
对象
SOAPException
- 如果在创建
SOAPElement
对象时存在错误
public abstract SOAPElement createElement(String localName, String prefix, String uri) throws SOAPException
SOAPElement
对象。返回值的具体类型将取决于提供给新
SOAPElement
的名称。例如,一个带有名称 "{http://www.w3.org/2003/05/soap-envelope}Envelope" 的新
SOAPElement
会导致创建支持 SOAP 1.2 行为的
SOAPEnvelope
。
localName
- 给出新元素本地名称的
String
prefix
- 此
SOAPElement
的前缀
uri
- 给出新元素所属名称空间 URI 的
String
SOAPException
- 如果在创建
SOAPElement
对象时存在错误
public abstract Detail createDetail() throws SOAPException
DetailEntry
对象容器的新
Detail
对象。
此工厂方法创建 Detail
对象,用于不可能使用 SOAPFault
抽象的情况。
Detail
对象
SOAPException
- 如果存在 SOAP 错误
UnsupportedOperationException
- 如果为 SOAPFactory 指定的协议是
DYNAMIC_SOAP_PROTOCOL
public abstract SOAPFault createFault(String reasonText, QName faultCode) throws SOAPException
reasonText
和
faultCode
初始化的新
SOAPFault
对象
reasonText
- 错误的 ReasonText/FaultString
faultCode
- 错误的 FaultCode
SOAPFault
对象
SOAPException
- 如果存在 SOAP 错误
public abstract SOAPFault createFault() throws SOAPException
SOAPFault
对象
SOAPFault
对象
SOAPException
- 如果存在 SOAP 错误
public abstract Name createName(String localName, String prefix, String uri) throws SOAPException
Name
对象。
此工厂方法创建 Name
对象,用于不可能使用 SOAPEnvelope
抽象的情况。
localName
- 给出本地名称的
String
prefix
- 给出名称空间前缀的
String
uri
- 给出名称空间 URI 的
String
Name
对象
SOAPException
- 如果存在 SOAP 错误
public abstract Name createName(String localName) throws SOAPException
Name
对象。
此工厂方法创建 Name
对象,用于不可能使用 SOAPEnvelope
抽象的情况。
localName
- 给出本地名称的
String
Name
对象
SOAPException
- 如果存在 SOAP 错误
public static SOAPFactory newInstance() throws SOAPException
SOAPFactory
对象,该对象是默认实现 (SOAP 1.1) 的实例。 此方法使用以下查找过程顺序来确定要加载的 SOAPFactory 实现类:
SOAPFactory
实例
SOAPException
- 如果在创建默认
SOAPFactory
时出现错误
SAAJMetaFactory
public static SOAPFactory newInstance(String protocol) throws SOAPException
SOAPFactory
对象,该对象是指定实现的实例,此方法使用 SAAJMetaFactory 来定位实现类并创建 SOAPFactory 实例。
protocol
- 字符串常量,表示指定 SOAP 工厂实现的协议。可以是
DYNAMIC_SOAP_PROTOCOL
、
DEFAULT_SOAP_PROTOCOL
(等同于
SOAP_1_1_PROTOCOL
)或
SOAP_1_2_PROTOCOL
。
SOAPFactory
实例
SOAPException
- 如果在创建指定
SOAPFactory
时出现错误
SAAJMetaFactory