JAX-WS 注释

Java™ API for XML-Based Web Services (JAX-WS) 依赖于使用注释来指定与 Web Service 实现相关联的元数据以及简化 Web Service 的开发。 注释描述了如何将服务器端服务实现作为 Web Service 进行访问,或者客户机端 Java 类如何访问 Web Service。

JAX-WS 编程标准支持使用元数据对 Java 类进行注释,这些元数据用于将服务端点应用程序定义为 Web Service 以及客户机可以如何访问该 Web Service。 JAX-WS 支持使用基于 Java 编程语言 (Java 规范请求 (JSR) 175) 规范的元数据工具, Java 平台的 Web Service 元数据 (JSR 181) 规范以及 JAX-WS 2.0 和更高版本 (JSR 224) 规范 (其中包含 JAXB 注释) 定义的注释。 通过使用 JSR 181 标准中的注释,您可以简单地注释服务实现类或服务接口,并且应用程序现在将作为 Web Service 进行启用。 在 Java 源中使用注释可通过定义通常从部署描述符文件, WSDL 文件或将元数据从 XML 和 WSDL 映射到源工件中获取的一些其他信息来简化 Web Service 的开发和部署。

使用注释来配置绑定、处理程序链、端口类型的集合名称、服务以及其他 WSDL 参数。 注释用于将 Java 映射到 WSDL 和模式,以及在运行时用于控制 JAX-WS 运行时如何处理和响应 Web Service 调用。

对于 JAX-WS Web Service,可以选择是否使用 webservices.xml 部署描述符,这是因为您可以使用注释来指定该部署描述符文件所包含的所有信息。 可以使用部署描述符文件来扩充或覆盖现有 JAX-WS 注释。 在 webservices.xml 部署描述符中定义的任何信息都将覆盖注释指定的任何相应信息。

从 WebSphere® Application Server V 7.0 和更高版本开始,将扫描 Java EE 5 应用程序模块 (Web 应用程序模块 V 2.5 或更高版本,或者 EJB 模块 V 3.0 或更高版本) 以获取用于标识 JAX-WS 服务和客户机的注释。 然而,缺省情况下,考虑到性能方面的因素,将不扫描 Java EE 5 应用程序模块之前的模块(Web 应用程序模块 V2.4 或更早版本,或 EJB 模块 V2.1 或更早版本)以获取 JAX-WS 注释。

在 V 6.1 Feature Pack for Web Services 中,缺省行为是扫描 Java Platform, Enterprise Edition (Java EE) 5 之前的 Web 应用程序模块以标识 JAX-WS 服务,并在应用程序安装期间扫描Java EE 5 之前的 Web 应用程序模块和 EJB 模块以用于服务客户机。 由于 WebSphere Application Server V 7.0 和更高版本的缺省行为是在应用程序安装或服务器启动期间不扫描Java EE 5 之前的模块以获取注释,因此必须配置下列其中一个属性,以保留与先前发行版中的功能部件包的向后兼容性:
  • 您可以在 WAR 文件或 EJB 模块的 META-INF/MANIFEST.MF 中,将 UseWSFEP61ScanPolicy 属性设为 true。 例如:
    Manifest-Version: 1.0
    UseWSFEP61ScanPolicy: true
    当此属性在模块的 META-INF/MANIFEST.MF 文件中设置为 true 时,将扫描模块以获取 JAX-WS 注释,而不考虑模块的 Java EE 版本。 缺省值为 false ,当缺省值生效时, JAX-WS 注释仅在版本为 Java EE 5 或更高版本的模块中受支持。
  • 您可以使用管理控制台来设置 com.ibm.websphere.webservices.UseWSFEP61ScanPolicy 定制 Java 虚拟机 (JVM) 属性。 请参阅 JVM 定制属性文档,以获取要使用的正确导航路径。 要请求在所有模块中进行注释扫描,而不考虑其 Java EE 版本,请将定制属性 com.ibm.websphere.webservices.UseWSFEP61ScanPolicy 设置为 true。 您必须在每个需要更改缺省行为的服务器上更改此设置。
如果该属性已在模块的 META-INF/MANIFEST.MF 文件中进行设置,那么此设置优先于服务器的定制 JVM 属性。 在使用任一属性时,您都必须在安装应用程序之前建立预期的注释扫描行为。 在安装应用程序之后,您无法动态更改扫描行为。 如果在安装应用程序之后需要更改此行为,那么必须先卸载应用程序,使用相应的属性来指定预期的扫描行为,然后再次安装应用程序。 如果在节点所包含服务器的配置中将 com.ibm.websphere.webservices.UseWSFEP61ScanPolicy 设为 true,那么在联合这些节点时,此属性不会影响 Deployment Manager。 在联合节点之前,您必须在 Deployment Manager 上将此属性设为 true,才能保留与迁移前节点上的行为相同的行为。
[z/OS]
避免麻烦: 如果在 z/OS® 平台上使用此 JVM 属性,那么必须在服务器的服务方区域和控制区域中设置此属性。
避免麻烦: 联合在节点中包含的服务器配置中将 com.ibm.websphere.webservices.UseWSFEP61ScanPolicy 设置为 true 的节点时,这不会影响 Deployment Manager。 如果希望保留与迁移前节点上的行为相同的行为,那么在联合节点之前,您必须在 Deployment Manager 上将此属性设为 true
下表中列出了 JAX-WS 支持的注释。 注释的目标适用于以下 Java 对象:
  • Java 类、枚举或接口等类型
  • 方法
  • 表示 Java 类中局部实例变量的字段
  • Java 方法中的参数
表 1. Web Service 元数据注释 (JSR 181)描述受支持的 Web Service 元数据注释及其关联属性。
注释类 注释 属性
javax.jws. WebService @WebService 注解将 Java 类标记为实现了 Web 服务,或将服务端点接口 (SEI) 标记为实现了 Web 服务接口。
重要说明:
  • 实现网络服务的 Java 类必须指定 @WebService 或 @WebServiceProvider 注解。 不能同时提供这两种注释。 此注释适用于客户机/服务器 SEI 或服务器端点实现类。
  • 如果注释通过 endpointInterface 属性引用某个 SEI,那么还必须使用 @WebService 注释对该 SEI 进行注释。
  • 请参阅 "在基于 SEI 的 JAX-WS Web 服务中公开方法 "信息,了解在服务端点实现中使用 @WebService 和 @WebMethod 注释来指定要作为 JAX-WS Web 服务公开的 Java 方法的最佳实践。
  • 注释目标:类型
  • 属性:
    - name
    wsdl:portType 的名称。 缺省值是 Java 类或接口的非限定名。 (字符串)
    - targetNamespace
    指定从 Web Service 生成的 WSDL 和 XML 元素的 XML 名称空间。 缺省值为从包含该 Web Service 的包名映射的名称空间。 (字符串)
    - serviceName
    指定 Web Service 的服务名称:wsdl:service。 缺省值是 Java 类 + 服务的简单名称。 (字符串)
    - endpointInterface
    指定用于定义服务的抽象 Web Service 约定的服务端点接口的限定名。 如果指定了此限定名,那么会使用该服务端点接口来确定抽象 WSDL 约定。 (字符串)
    - portName
    wsdl:portName。 缺省值为 WebService.name+Port。 (字符串)
    - wsdlLocation
    指定用于定义 Web Service 的 WSDL 文档的 Web 地址。 Web 地址可以是相对地址或绝对地址。 (字符串)
javax.jws. WebMethod @WebMethod 注释用于表示作为一项 Web Service 操作的方法。

将此注释应用于客户机或服务器服务端点接口 (SEI) 上的方法,或者应用于服务器端点实现类。

  • 注释目标:方法
  • 属性:
    - operationName
    指定与此方法相匹配的 wsdl:operation 的名称。 缺省值是 Java 方法的名称。 (字符串)
    - action
    定义此操作的行为。 对于 SOAP 绑定,此值将确定 SOAPAction 头的值,您必须显式设置此值
    - exclude
    指定是否从 Web Service 中排除某一方法。 缺省值为 false。 (布尔值)
javax.jws. Oneway @Oneway 注释用于将某一方法表示为只有输入消息而没有输出消息的 Web Service 单向操作。

将此注释应用于客户机或服务器服务端点接口 (SEI) 上的方法,或者应用于服务器端点实现类。

  • 注释目标:方法
  • 没有适用于 Oneway 注释的属性。
javax.jws. WebParam @WebParam 注释用于定制从单个参数至 Web Service 消息部分和 XML 元素的映射。

将此注释应用于客户机或服务器服务端点接口 (SEI) 上的方法,或者应用于服务器端点实现类。

  • 注释目标:参数
  • 属性:
    - name
    参数的名称。 如果操作是远程过程调用 (RPC) 类型并且未指定 partName 属性,那么这是用于表示参数的 wsdl:part 属性的名称。 如果操作是文档类型或者参数映射到某个头,那么 -name 是用于表示该参数的 XML 元素的局部名称。 如果操作是文档类型、参数类型为 BARE 并且方式为 OUTINOUT,那么必须指定此属性。 (字符串)
    - partName
    定义用于表示此参数的 wsdl:part 属性的名称。 仅当操作类型为 RPC 或者操作是文档类型并且参数类型为 BARE 时才使用此参数。 (字符串)
    - targetNamespace
    指定参数的 XML 元素的 XML 名称空间。 当属性映射到 XML 元素时,仅应用于文档绑定。 缺省值为 Web Service 的 targetNamespace。 (字符串)
    - mode
    此值表示此方法的参数流的方向。 有效值为 ININOUTOUT。 (字符串)
    - header
    指定参数是在消息头还是消息体中。 缺省值为 false。 (布尔值)
javax.jws. WebResult @WebResult 注释用于定制从返回值至 WSDL 部件或 XML 元素的映射。

将此注释应用于客户机或服务器服务端点接口 (SEI) 上的方法,或者应用于服务器端点实现类。

  • 注释目标:方法
  • 属性:
    - name
    当返回值列出在 WSDL 文件中并且在连接上的消息中找到该返回值时,指定该返回值的名称。 对于 RPC 绑定,这是用于表示返回值的 wsdl:part 属性的名称。 对于文档绑定,-name 参数是用于表示返回值的 XML 元素的局部名。 对于 RPC 和 DOCUMENT/WRAPPED 绑定,缺省值为 return。 对于 DOCUMENT/BARE 绑定,缺省值为方法名 + Response。 (字符串)
    - targetNamespace
    指定返回值的 XML 名称空间。 仅当操作类型为 RPC 或者操作是文档类型并且参数类型为 BARE 时才使用此参数。 (字符串)
    - header
    指定头中是否附带结果。 缺省值为 false。 (布尔值)
    - partName
    指定 RPC 或 DOCUMENT/BARE 操作的结果的部件名称。 缺省值为 @WebResult.name。 (字符串)
javax.jws. HandlerChain @HandlerChain 注释用于将 Web Service 与外部定义的处理程序链相关联。

只能通过对服务端点接口 (SEI) 或服务器端点实现类使用 @HandlerChain 注释来配置服务器端的处理程序。

但是可以使用多种方法来配置客户端的处理程序。 可以通过对生成的服务类或者 SEI 使用 @HandlerChain 注释来配置客户端的处理程序。 另外,可以按编程方式在服务上注册您自己的 HandlerResolver 接口实现,或者按编程方式在绑定对象上设置处理程序链。

  • 注释目标:类型
  • 属性:
    - file
    指定处理程序链文件所在的位置。 文件位置可以是采用外部格式的绝对 java.net.URL,也可以是类文件中的相对路径。 (字符串)
    - name
    指定配置文件中处理程序链的名称。 (字符串)
javax.jws. SOAPBinding @SOAPBinding 注释用于指定 Web Service 与 SOAP 消息协议之间的映射。

将此注释应用于客户机或服务器服务端点接口 (SEI) 上的类型或方法,或者应用于服务器端点实现类。

方法级别的注释仅限于它可以指定的对象,仅当 style 属性为 DOCUMENT 时才使用该注释。 如果未指定方法级别的注释,那么将使用类型的 @SOAPBinding 行为。

  • 注释目标:类型或方法
  • 属性:
    - style
    定义发送到 Web Service 和来自 Web Service 的消息的编码样式。 有效值为 DOCUMENTRPC。 缺省值为 DOCUMENT。 (字符串)
    - use
    定义用于发送到 Web Service 和来自 Web Service 的消息的格式。 缺省值为 LITERAL。 不支持 ENCODED。 (字符串)
    - parameterStyle
    确定方法的参数是否表示整个消息体,或者参数是否是封装在执行操作之后命名的顶级元素中的元素。 有效值为WRAPPEDBARE。 对于 DOCUMENT 类型的绑定只能使用 BARE 值。 缺省值为 WRAPPED。 (字符串)

表 2. JAX-WS 注释 (JSR 224)描述受支持的 JAX-WS 注释及其关联属性。
注释类 注释 属性
javax.xml.ws. Action @Action 注释用于指定与 Web Service 操作关联的 WS-Addressing 操作。

如果您将此注释与特定方法配合使用,并生成相应的 WSDL 文档,那么会将 WS-Addressing 操作扩展属性添加到与该方法对应的 WSDL 操作的 input 和 output 元素。

要将此属性添加到 WSDL 操作,您还必须在服务器端点实现类上指定 @Addressing 注释。 如果不想使用 @Addressing 注释,那么可以提供您自己的已定义 Action 属性的 WSDL 文档。

  • 注释目标:方法
  • 属性:
    - fault
    为操作的 wsdl:fault 指定 FaultAction 数组。 (字符串)
    - input
    为操作的 wsdl:input 指定操作。 (字符串)
    - output
    为操作的 wsdl:output 指定操作。 (字符串)
javax.xml.ws. BindingType @BindingType 注释指定在发布此类型的端点时要使用的绑定。

将此注释应用于服务器端点实现类。

重要: 您可以在 JavaBeans 端点实现类上使用 @BindingType 注释,通过指定 javax.xml.ws.soap.SOAPBinding.SOAP11HTTP_MTOM_BINDINGjavax.xml.ws.soap.SOAPBinding.SOAP12HTTP_MTOM_BINDING 作为注释值来启用 MTOM。
  • 注释目标:类型
  • 属性:
    - value
    指示绑定标识 Web 地址。 有效值为 javax.xml.ws.soap.SOAPBinding.SOAP11HTTP_BINDINGjavax.xml.ws.soap.SOAPBinding.SOAP12HTTP_BINDINGjavax.xml.ws.http.HTTPBinding.HTTP2HTTP_BINDING。 缺省值为 javax.xml.ws.soap.SOAPBinding.SOAP11HTTP_BINDING。 (字符串)
javax.xml.ws. FaultAction @FaultAction 注释指定已添加到故障响应中的 WS-Addressing 操作。

此注释必须包含在 @Action 注释中。

如果您将此注释与特定方法配合使用,那么会将 WS-Addressing FaultAction 扩展属性添加到与该方法对应的 WSDL 操作的 fault 元素。

要将此属性添加到 WSDL 操作,您还必须在服务器端点实现类上指定 @Addressing 注释。 如果不想使用 @Addressing 注释,那么可以提供您自己的已定义 Action 属性的 WSDL 文档。

  • 注释目标:方法
  • 属性:
    - value
    为操作的 wsdl:fault 指定操作。 (字符串)
    - output
    指定异常类的名称。 (字符串)
    - className
    指定用于表示请求包装器的类的名称。 (字符串)
javax.xml.ws. RequestWrapper @RequestWrapper 注释提供 JAXB 生成的请求包装器 Bean、元素名称和名称空间,用于对在运行时使用的请求包装器 Bean 进行序列化和反序列化。

从 Java 对象开始时,此元素用于解决文档文字方式下的重载冲突。 在这种情况下,只有 className 属性是必需的。

将此注释应用于客户机或服务器服务端点接口 (SEI) 上的方法,或者应用于服务器端点实现类。

  • 注释目标:方法
  • 属性:
    - localName
    指定用于表示请求包装器的 XML 模式元素的局部名称。 缺省值为在 javax.jws.WebMethod 注释中定义的 operationName。 (字符串)
    - targetNamespace
    指定请求包装器方法的 XML 名称空间。 缺省值为 SEI 的目标名称空间。 (字符串)
    - className
    指定用于表示请求包装器的类的名称。 (字符串)
    - partName
    指定 wsdl:part 属性的名称,该属性用于表示 RequestWrapper 类的 XML 模式元素。 此属性适用于 JAX-WS 2.2 及更高版本。 (字符串)
javax.xml.ws. ResponseWrapper @ResponseWrapper 注释提供 JAXB 生成的响应包装器 Bean、元素名称和名称空间,用于对在运行时使用的响应包装器 Bean 进行序列化和反序列化。

从 Java 对象开始时,此元素用于解决文档文字方式下的重载冲突。 在这种情况下,只有 className 属性是必需的。

将此注释应用于客户机或服务器服务端点接口 (SEI) 上的方法,或者应用于服务器端点实现类。

  • 注释目标:方法
  • 属性:
    - localName
    指定用于表示请求包装器的 XML 模式元素的局部名称。 缺省值为 operationName + ResponseoperationName 是在 javax.jws.WebMethod 注释中定义的。 (字符串)
    - targetNamespace
    指定请求包装器方法的 XML 名称空间。 缺省值为 SEI 的目标名称空间。 (字符串)
    - className
    指定代表响应包装器的类的名称。 (字符串)
    - partName
    指定 wsdl:part 属性的名称,该属性用于表示 ResponseWrapper 类的 XML 模式元素。 此属性适用于 JAX-WS 2.2 及更高版本。 (字符串)
javax.xml.ws. RespectBinding @RespectBinding 注释指定 JAX-WS 实现是否必须将 wsdl:binding 的内容用于端点。

如果指定此注释,那么会执行检查以确保支持 enabled 属性设为 true 的所有必需 WSDL 可扩展性元素。

将此注释应用于服务器端点实现类上的方法。

  • 注释目标:方法
  • 属性:
    - enabled
    指定是否必须使用 wsdl:binding。 缺省值为 true。 (布尔值)
javax.xml.ws. ServiceMode @ServiceMode 注释指定服务提供程序是需要对整个协议消息具有访问权还是只需对消息有效内容具有访问权。
重要: @ServiceMode 注释仅支持注释为 @WebServiceProvider 的类。
  • 注释目标:类型
  • 属性:
    - value
    指示提供者类是接受消息的有效内容 PAYLOAD 还是整个消息 MESSAGE。 缺省值为 PAYLOAD。 (字符串)
javax.xml.ws. soap.Addressing @Addressing 注释指定此服务需要启用 WS-Addressing 支持。

将此注释应用于服务器端点实现类上的方法。

  • 注释目标:类型
  • 属性:
    - enabled
    指定是否启用 WS-Addressing。 缺省值为 true。 (布尔值)
    - required
    指定 WS-Addressing 头必须存在于入局消息上。 缺省值为 false。 (布尔值)
    - responses
    指定要使用的消息交换模式。 缺省值为 Responses.ALL。 此属性适用于 JAX-WS 2.2 及更高版本。 (字符串)
javax.xml.ws. soap.MTOM @MTOM 注释指定是否使用 MTOM 来发送 SOAP 消息体中的二进制内容。

将此注释应用于服务端点实现类。

  • 注释目标:类
  • 属性:
    - enabled
    指定是否对 JAX-WS 端点启用 MTOM。 缺省值为 true。 (布尔值)
    - threshold
    指定使用 MTOM 来发送的消息的最小大小。 如果消息大小小于此指定的整数,那么会将消息作为基本 64 位或 hexBinary 数据直接插入 XML 文档中。 (整数)
javax.xml.ws. WebFault 注解将 WSDL 故障映射为 Java 异常。 @WebFault 注释将 WSDL 故障映射为 Java 异常。 对从 WSDL 故障消息引用的全局元素生成的 JAXB 类型进行序列化期间,该注释用来捕获故障的名称。 它还可以用来定制从特定于服务的异常到 WSDL 故障的映射。

此注释只能应用于客户机或服务器上的故障实现类。

  • 注释目标:类型
  • 属性:
    - name
    指定在 WSDL 文件中表示相应故障的 XML 元素的本地名称。 必须指定实际值。 (字符串)
    - targetNamespace
    指定用于表示 WSDL 文件中相应故障的 XML 元素的名称空间。 (字符串)
    - faultBean
    指定故障 Bean 类的名称。 (字符串)
    - messageName
    指定 wsdl:message 属性的名称,该属性用于表示 WSDL 文件中相应的故障。 此属性适用于 JAX-WS 2.2 及更高版本。 (字符串)
javax.xml.ws. WebServiceProvider @WebServiceProvider 注释表示一个类满足 JAX-WS 提供程序实现类的要求。
重要说明:
  • 实现网络服务的 Java 类必须指定 @WebService 或 @WebServiceProvider 注解。 不能同时提供这两种注释。
  • 仅在服务实现类上支持使用 @WebServiceProvider 注释。
任何带有 @WebServiceProvider 注解的类都必须实现 javax.xml.ws.Provider 接口。
  • 注释目标:类型
  • 属性:
    - targetNamespace
    指定从 Web Service 生成的 WSDL 和 XML 元素的 XML 名称空间。 缺省值为从包含该 Web Service 的包名映射的名称空间。 (字符串)
    - serviceName
    指定 Web Service 的服务名称:wsdl:service。 缺省值是 Java 类 + 服务的简单名称。 (字符串)
    - portName
    wsdl:portName。 缺省值为类的名称 + Port。 (字符串)
    - wsdlLocation
    这是定义 Web Service 的 WSDL 文档的 Web 地址。 此属性是必需的。 (字符串)
javax.xml.ws. WebServiceRef @WebServiceRef 注释用于定义对客户机所调用的 Web Service 的引用。
注:
  • 可以使用 @WebServiceRef 注释插入 JAX-WS 服务和端口的实例。
  • 仅在特定的类类型中支持 @WebServiceRef 注释。 示例包括 JAX-WS 端点实现类, JAX-WS 处理程序类, Enterprise JavaBeans 类和 Servlet 类。 支持此注释的类类型与支持 @Resource 注释的类类型相同。 请参阅 Java Platform, Enterprise Edition (Java EE) 5 规范,以获取受支持类类型的完整列表。
  • 注释目标:类型、字段或方法
  • 属性:
    - name
    指定资源的 JNDI 名称。 字段名称是字段注释的缺省值。 对应于方法的 JavaBeans 属性名是方法注释的缺省值。 因为没有缺省值,所以您必须指定类注释的值。 (字符串)
    - type
    指示资源的 Java 类型。 字段类型是字段注释的缺省值。 JavaBeans 属性的类型是方法注释的缺省值。 因为没有缺省值,所以您必须指定类注释的值。 (类)
    - mappedName
    指定要将此资源映射到的名称。 (字符串)
    - value
    指示服务类的值,且指示该服务类是对 javax.xml.ws.Service 进行扩展的类型。 当引用类型是服务端点接口时,此属性是必需的。 (类)
    - wsdlLocation
    这是定义 Web Service 的 WSDL 文档的 Web 地址。 此属性是必需的。 (字符串)
    - lookup
    指定目标 Web Service 的 JNDI 查找名称。 此属性适用于 JAX-WS 2.2 及更高版本。 (字符串)
javax.xml.ws. WebServiceRefs @WebServiceRefs 注释会将多个 @WebServiceRef 注释与一个特定类相关联。
注: @WebServiceRef 注解仅在某些类类型中支持。 示例包括 JAX-WS 端点实现类, JAX-WS 处理程序类, Enterprise JavaBeans 类和 Servlet 类。 支持此注释的类类型与支持 @Resource 注释的类类型相同。 请参阅 Java Platform, Enterprise Edition (Java EE) 5 规范,以获取受支持类类型的完整列表。
  • 注释目标:类型
  • 属性:
    - value
    为多个 Web Service 引用声明指定一个数组。 此属性是必需的。
表 3. JAX-WS 公共注释 (JSR 250) 描述受支持的 JAX-WS 公共注释及其关联属性。
注释类 注释 属性
javax.annotation. Resource @Resource 注释标记应用程序所需要的 WebServiceContext 资源。
注:

将此注解应用到 JavaBeans 端点或 Provider 端点的服务器端点实现类上的 WebServiceContext 类型字段时,容器会将 WebServiceContext 的实例注入指定的字段。

使用此注释取代 @WebServiceRef 注释时,会应用针对 @WebServiceRef 注释描述的规则。

  • 注释目标:字段或方法
  • 属性:
    - type
    指示资源的 Java 类型。 您需要使用缺省值 java.lang.Objectjavax.xml.ws.Web ServiceContext 值。 如果类型是缺省值,那么必须将资源添加到字段或方法中。 在这种情况下,该字段的类型或该方法定义的 JavaBeans 属性的类型必须为 javax.xml.ws.WebServiceContext。 (类)
    如果使用此注释来插入 Web Service,请参阅 @WebServiceRef type 属性的描述。
javax.annotation. Resources @Resources 注释会将多个 @Resource 注释与特定的类相关联,并充当多个资源声明的容器。
  • 注释目标:字段或方法
  • 属性:
    - value
    为多个 @Resource 注释指定一个数组。 此属性是必需的。
javax.annotation. PostConstruct @PostConstruct 注释标记需要在对类执行依赖性注入之后才运行的方法。

将此注释应用于 JAX-WS 应用程序处理程序或服务器端点实现类。

  • 注释目标:方法
javax.annotation. PreDestroy @PreDestroy 注释标记在容器移除实例时必须运行的方法。

将此注释应用于 JAX-WS 应用程序处理程序或服务器端点实现类。

  • 注释目标:方法
表 4. IBM 专有注释 描述受支持的 IBM® 专有注释及其关联属性。
注释类 注释 属性
com.ibm.websphere. wsaddressing. jaxws21. SubmissionAddressing @SubmissionAddressing 注释指定此服务需要对 2004/08 WS-Addressing 规范启用 WS-Addressing 支持。

此注释是 JAX-WS 2.1 规范的 IBM 实现的一部分。

将此注释应用于服务器端点实现类上的方法。

  • 注释目标:类型
  • 属性:
    - enabled
    指定是否启用 WS-Addressing。 缺省值为 true。 (布尔值)
    - required
    指定 WS-Addressing 头必须存在于入局消息上。 缺省值为 false。 (布尔值)