-
@Target({TYPE,METHOD,字段}) @Retention(RUNTIME) @Documented @Repeatable(WebServiceRefs.class) public @interface WebServiceRef
WebServiceRef
注释用于定义对Web服务的引用以及(可选)为其注入目标。 它可以用于注入服务和代理实例。 这些注入的引用不是线程安全的。 如果引用由多个线程访问,则通常的同步技术可以用于支持多个线程。Web服务引用是Java EE 5意义上的资源。 用元注释
WebServiceFeatureAnnotation
注释的注释(例如,Addressing
)可以与WebServiceRef
结合使用。 创建的引用必须配置注释的Web服务功能。例如,在下面的代码中,注入的
StockQuoteProvider
代理必须启用WS-Addressing,这是由Addressing
注释指定的。public class MyClient { @Addressing @WebServiceRef(StockQuoteService.class) private StockQuoteProvider stockQuoteProvider; ... }
如果JAX-WS实现遇到与注释不支持的或无法识别的注解
WebServiceFeatureAnnotation
一个与指定WebServiceRef
,错误应予重视。- 从以下版本开始:
- 1.6,JAX-WS 2.0
- 另请参见:
-
Resource
,WebServiceFeatureAnnotation
-
-
Optional Element Summary
Optional Elements Modifier and Type Optional Element 描述 String
lookup
可解析为目标Web服务引用的便携式JNDI查找名称。String
mappedName
该资源应映射到的产品特定名称。String
name
资源的JNDI名称。Class<?>
type
资源的Java类型。Class<? extends Service>
value
服务类,总是一个类型扩展javax.xml.ws.Service
。String
wsdlLocation
指向Web服务的WSDL文档的URL。
-
-
-
Element Detail
-
name
String name
资源的JNDI名称。 对于字段注释,默认值为字段名称。 对于方法注释,默认值为与该方法对应的JavaBeans属性名称。 对于类注释,没有默认值,必须指定。 JNDI名称可以是绝对的(具有任何逻辑命名空间)或相对于JNDIjava:comp/env
命名空间。- 结果
- 绝对或相对的JNDI名称
- Default:
- “”
-
-
-
type
Class<?> type
资源的Java类型。 对于字段注释,默认值是字段的类型。 对于方法注释,默认值是JavaBeans属性的类型。 对于类注释,没有默认值,必须指定。- 结果
- 资源的类型
- Default:
- java.lang.Object.class
-
-
-
mappedName
String mappedName
该资源应映射到的产品特定名称。 该资源的名称(由name
元素定义或默认值)是使用该资源的应用程序组件本地的名称。 (当指定了相对的JNDI名称时,它是JNDIjava:comp/env
命名空间中的一个名称。)许多应用程序服务器提供了一种将这些本地名称映射到应用程序服务器已知的资源名称的方法。 此映射名称通常是全局 JNDI名称,但可以是任何形式的名称。应用程序服务器不需要支持任何特定形式或类型的映射名称,也不支持使用映射名称的功能。 映射名称取决于产品,通常依赖于安装。 不使用映射名称是可移植的。
- 结果
- 产品具体资源名称
- Default:
- “”
-
-
-
wsdlLocation
String wsdlLocation
指向Web服务的WSDL文档的URL。 如果未指定,则使用资源类型上的注释指定的WSDL位置。- 结果
- 指向WSDL文档的URL
- Default:
- “”
-
-
-
lookup
String lookup
可解析为目标Web服务引用的便携式JNDI查找名称。- 结果
- 便携式JNDI查找名称
- 从以下版本开始:
- 1.7,JAX-WS 2.2
- Default:
- “”
-
-