使用 Web 服务所采取的策略首先取决于选用的规范,而且主要取决于选用的规范。请使用 Java EE 5 规范(是为 JAX-WS Web 服务制订的)或遵循 J2EE 1.4 规范(假设使用的是 JAX-RPC Web 服务):
JAX-WS Web 服务客户端 (Java EE 5)。使用 JAX-WS Web 服务时,只有一种类型的 Web 服务客户端,即 IDE 生成的静态桩模块。IDE 生成桩模块和其他工件,将它们打包为归档,然后对其进行部署。由于 JAX-WS 不需要使用部署描述符,而在 Java 代码中使用标注,因此,J2EE 容器生成的静态桩模块(暗指使用部署描述符)是多余的。
JAX-RPC Web 服务客户端 (J2EE 1.4)。使用 JAX-RPC Web 服务时,共有两种类型的 Web 服务客户端:
J2EE 容器生成的静态桩模块。此类型基于 JSR-109,它通过以下方式来增强 JAX-RPC:定义在标准 J2EE 模块中打包 Web 服务,包含新的部署描述符,以及定义作为会话 Bean 或 Servlet 实现的 Web 服务。这是推荐的类型,也是可移植(通过 J2EE 1.4 规范)的类型。在选择此类型时,IDE 在部署描述符中添加部署信息,并且该容器生成桩模块和其他工件。
IDE 生成的静态桩模块。此类型基于 JSR-101,它定义了 WSDL 与 Java 之间的映射。它还定义了用来调用远程 Web 服务的客户端 API,以及用来驻留 Web 服务的服务器上的运行环境。此类型是无法移植的。在选择此类型时,IDE 会生成桩模块和其他工件,并将它们包装到归档文件中进行部署。
有关详细信息,请参见完整规范:
JSR-109 规范位于以下位置
JSR-101 规范位于以下位置
有关设计 Web 服务客户端的提示,请转至“帮助”>“Java BluePrints 解决方案目录”。从下拉列表中选择“从 J2EE 组件访问 Web 服务”和“从独立的 Java 客户端访问 Web 服务”。