public final class W3CEndpointReferenceBuilder extends Object
W3CEndpointReference
实例。
预期使用这个clsss的是为应用程序组件,例如工厂组件,创建一个W3CEndpointReference
对于因同一Java EE应用程序发布的Web服务端点。
也可以通过提供address
属性来为基于Java SE的端点创建W3CEndpointReferences
。
当创建一个W3CEndpointReference
对于不是由同一个Java EE应用程序发布的一个端点,该address
必须被指定的属性。
当创建一个W3CEndpointReference
对于因同一Java EE应用程序发布的一个端点,该address
属性可能null
但随后serviceName
和endpointName
必须指定相同的Java EE应用程序发布的端点。
当指定wsdlDocumentLocation
时,它必须参考有效的WSDL文档,并且serviceName
和endpointName
(如果指定)必须与WSDL文档中的服务和端口匹配。
Constructor and Description |
---|
W3CEndpointReferenceBuilder()
创建一个新的
W3CEndpointReferenceBuilder 实例。
|
Modifier and Type | Method and Description |
---|---|
W3CEndpointReferenceBuilder |
address(String address)
将
address 设置为
W3CEndpointReference 实例的
wsa:Address 。
|
W3CEndpointReferenceBuilder |
attribute(QName name, String value)
将扩展属性添加到
W3CEndpointReference 实例的
wsa:EndpointReference 元素。
|
W3CEndpointReference |
build()
从此
W3CEndpointReferenceBuilder 实例中设置的累积属性构建一个
W3CEndpointReference 。
|
W3CEndpointReferenceBuilder |
element(Element element)
在
W3CEndpointReference 实例的
wsa:EndpointReference 元素中添加一个
wsa:EndpointReference 元素。
|
W3CEndpointReferenceBuilder |
endpointName(QName endpointName)
在
wsa:Metadata 元素
endpointName 设为
wsam:ServiceName/@EndpointName 。
|
W3CEndpointReferenceBuilder |
interfaceName(QName interfaceName)
将
interfaceName 设置为
wsam:InterfaceName 元素中的
wsa:Metadata 元素。
|
W3CEndpointReferenceBuilder |
metadata(Element metadataElement)
将
metadataElement 添加到
W3CEndpointReference 实例的
wsa:Metadata 元素。
|
W3CEndpointReferenceBuilder |
referenceParameter(Element referenceParameter)
将
referenceParameter 添加到
W3CEndpointReference 实例
wsa:ReferenceParameters 元素。
|
W3CEndpointReferenceBuilder |
serviceName(QName serviceName)
将
serviceName 设置为
wsam:ServiceName 元素中的
wsa:Metadata 元素。
|
W3CEndpointReferenceBuilder |
wsdlDocumentLocation(String wsdlDocumentLocation)
设置
wsdlDocumentLocation ,将作为被引用
wsa:Metadata/@wsdli:wsdlLocation 。
|
public W3CEndpointReferenceBuilder()
W3CEndpointReferenceBuilder
实例。
public W3CEndpointReferenceBuilder address(String address)
address
设置为W3CEndpointReference
实例的wsa:Address
。
当构建不是由同一Java EE应用程序发布或在Java SE上运行的Web服务端点的W3CEndpointReference
时, address
必须设置为非null
值。
address
- 返回的
W3CEndpointReference
要定位的端点的地址。
W3CEndpointReferenceBuilder
实例与
address
设置为
wsa:Address
。
public W3CEndpointReferenceBuilder interfaceName(QName interfaceName)
interfaceName
设置为wsam:InterfaceName
元素中的wsa:Metadata
元素。
详见2.1 Referencing WSDL Metadata from an EPR 。
interfaceName
- 返回的
W3CEndpointReference
要定位的端点的端口类型名称。
W3CEndpointReferenceBuilder
实例与
interfaceName
作为
wsam:InterfaceName
元素添加到
wsa:Metadata
元素
public W3CEndpointReferenceBuilder serviceName(QName serviceName)
serviceName
设置为wsam:ServiceName
元素中的wsa:Metadata
元素。
详见2.1 Referencing WSDL Metadata from an EPR 。
serviceName
- 返回的W3CEndpointReference
要定位的端点的服务名称。
这个属性也可以与使用endpointName
(PORTNAME)属性来查找address
由同一个Java EE应用程序发布的Web服务端点。
W3CEndpointReferenceBuilder
实例与
serviceName
作为
wsam:ServiceName
元素添加到
wsa:Metadata
元素
public W3CEndpointReferenceBuilder endpointName(QName endpointName)
endpointName
设置为wsam:ServiceName/@EndpointName
在wsa:Metadata
元素中。
此方法只能在调用serviceName
方法后调用。
endpointName
- 返回的W3CEndpointReference
要定位的端点的名称。
该endpointName
(PORTNAME)特性也可与用于serviceName
属性来查找address
由同一个Java EE应用程序发布的Web服务端点。
W3CEndpointReferenceBuilder
实例与
endpointName
为
wsam:ServiceName/@EndpointName
在
wsa:Metadata
元素。
IllegalStateException,
- 如果
serviceName
尚未设置。
IllegalArgumentException,
- 如果
endpointName
的命名空间URI不匹配
serviceName
的命名空间URI
public W3CEndpointReferenceBuilder wsdlDocumentLocation(String wsdlDocumentLocation)
wsdlDocumentLocation
,将作为被引用wsa:Metadata/@wsdli:wsdlLocation
。
wsdli:wsdlLocation的值的命名空间名称可以从WSDL本身获取。
wsdlDocumentLocation
- 要引用的WSDL文档的位置
wsa:Metadata
的
W3CEndpointReference
。
W3CEndpointReferenceBuilder
与实例
wsdlDocumentLocation
是被引用。
public W3CEndpointReferenceBuilder referenceParameter(Element referenceParameter)
referenceParameter
添加到
W3CEndpointReference
实例
wsa:ReferenceParameters
元素。
referenceParameter
- 要添加到
wsa:ReferenceParameters
元素的元素。
W3CEndpointReferenceBuilder
实例与
referenceParameter
添加到
wsa:ReferenceParameters
元素。
IllegalArgumentException
- 如果
referenceParameter
是
null
。
public W3CEndpointReferenceBuilder metadata(Element metadataElement)
metadataElement
添加到
W3CEndpointReference
实例的
wsa:Metadata
元素。
metadataElement
- 要添加到
wsa:Metadata
元素的元素。
W3CEndpointReferenceBuilder
实例与
metadataElement
添加到
wsa:Metadata
元素。
IllegalArgumentException
- 如果
metadataElement
是
null
。
public W3CEndpointReferenceBuilder element(Element element)
W3CEndpointReference
实例的
wsa:EndpointReference
元素。
element
- 要添加到
W3CEndpointReference
的扩展元素
W3CEndpointReferenceBuilder
实例与扩展名
element
添加到
W3CEndpointReference
实例。
IllegalArgumentException
- 如果
element
是
null
。
public W3CEndpointReferenceBuilder attribute(QName name, String value)
W3CEndpointReference
实例的
wsa:EndpointReference
元素。
name
- 要添加到
W3CEndpointReference
value
- 扩展属性值
W3CEndpointReferenceBuilder
实例与扩展属性添加到
W3CEndpointReference
实例。
IllegalArgumentException
- 如果
name
或
value
是
null
。
public W3CEndpointReference build()
W3CEndpointReferenceBuilder
实例上设置的累积属性构建一个W3CEndpointReference
。
这种方法可以被用来创建一个W3CEndpointReference
通过指定任何端点address
与任何其它所需的性质沿属性。 这种方法也可以用来创建一个W3CEndpointReference
对于由同一个Java EE应用程序发布的端点。 这种方法可以自动判断address
由被识别的同一Java EE应用程序发布的端点serviceName
和endpointName
性能。 如果address
为null
和serviceName
和endpointName
不认同由同一个Java EE应用程序发布的一个端点,一个java.lang.IllegalStateException
必须被抛出。
W3CEndpointReference
从这个W3CEndpointReferenceBuilder
实例的累积属性设置。
这种方法永远不会返回null
。
IllegalStateException
-
address
, serviceName
和endpointName
都null
。 serviceName
服务是null
和endpointName
不是null
。 address
属性为null
,并且serviceName
和endpointName
未指定由同一Java EE应用程序发布的有效端点。 serviceName
不是null
并且不在指定的WSDL中。 endpointName
端口不是null
,并且它不存在于WSDL中的serviceName
服务中。 wsdlDocumentLocation
不是null
并且不表示有效的WSDL。 WebServiceException
- 创建
W3CEndpointReference
时发生错误。