将支持 Web Service 的客户机 JAR 文件组装到 EAR 文件中

在生成应用程序工件后,您需要组装这些工件以创建在 Web Service 应用程序中使用的企业归档 (EAR) 文件。 将支持 Web 服务的客户端 JAR 文件组装到 EAR 文件中,使应用程序客户端能够访问 Web 服务。

准备工作

对于基于 XML 的 Web 服务的 Java™ API (JAX-WS) Web 服务应用程序,您需要由wsimport从 WSDL 文件启动时使用命令行工具来完成此任务。 wsimport 工具将 WSDL 文件处理为输入并生成下列可移植工件:
  • 服务端点接口 (SEI)
  • 服务类
  • 异常类(从任何存在的 wsdl:fault 类映射)
  • Java XML 绑定体系结构 (JAXB) 生成的类型值是从 XML 模式类型映射的 Java 类
  • 包含实现的组装客户机模块、wsimport 命令行工具生成的所有类和 ejb-jar.xml 部署描述符或 application-client.xml 部署描述符。 此模块可以是:
    • 包含 META-INF/application-client.xml 文件的应用程序客户机模块。
    • 一家企业JavaBeans (EJB)模块包含META-INF/ejb-jar.xml文件。
对于基于 XML 的 RPC (JAX-RPC) Web 服务应用程序的 Java API,您需要从WSDL2Java命令行工具来完成这个任务:
  • 包含实现的组装客户机模块、WSDL2Java 命令行工具生成的所有类和 ejb-jar.xml 部署描述符或 application-client.xml 部署描述符。 此模块可以是:
    • 包含 META-INF/application-client.xml 文件的应用程序客户机模块。
    • 一家企业JavaBeans (EJB)模块包含META-INF/ejb-jar.xml文件。
  • 您用于开发客户机的 WSDL 文件。
  • ibm-webservicesclient-ext.xmiibm-webservicesclient-bnd.xmi 部署描述符的模板(如果使用)。
  • 为基于 XML 的远程过程调用 (JAX-RPC) 映射部署描述符生成的 Java API。
限制:不要在应用程序存档中打包的文件的名称中包含井号 (#)。 由于内部处理问题,当应用程序归档中的文件名包含井号时,应用程序服务器无法正确部署应用程序。 发生这种故障时,如果处理应用程序,可能会发生异常。 而且,在部署应用程序后,应用程序的某些部分可能会丢失。 要解决此问题,请重命名应用程序归档中的任何文件名,以使其不包含井号。

有关此任务

您可以使用随附的组装工具WebSphere® Application Server组装支持 Web 服务的客户端应用程序。 如果你使用Rational® Application Developer对于组装,请参阅Rational Application Developer文档

按照以下步骤组装客户端代码和工件,使应用程序客户端能够访问 Web 服务。

过程

  1. 启动组装工具。
  2. 如果尚未完成,请配置组装工具使它在 Java EE 模块上工作。 需要确保启用了 Java EEWeb 类别。
  3. 将由命令行工具生成的客户机实现和工件导入至组装工具。
  4. 迁移使用Rational Application Developer组装工具。 要迁移这些文件,请将 JAR 文件导入组装工具。
  5. 如果客户机在容器中运行,请使用典型组装技术将 JAR 文件组装到企业归档 (EAR) 文件中。

结果

已经将对 Web Service 启用客户机应用程序所必需的工件组装到 EAR 文件中。

示例

此组装过程示例使用 AddressBookClient.jar JAR 文件和 AddressBookClient.ear EAR 文件:
META-INF/MANIFEST.MF
META-INF/application-client.xml
META-INF/wsdl/AddressBook.wsdl
META-INF/AddressBook_mapping.xml

com/ibm/websphere/samples/webservices/addr/Address.class
com/ibm/websphere/samples/webservices/addr/AddressBook.class
com/ibm/websphere/samples/webservices/addr/AddressBookClient.class
com/ibm/websphere/samples/webservices/addr/AddressBookService.class
...other generated classes...
组装 AddressBookClient.jar 文件到 AddressBookClient.ear 文件后,AddressBookClient.ear 文件包含下列文件:
META-INF/MANIFEST.MF 
AddressBookClient.jar 
META-INF/application.xml

下一步做什么?

对于基于 XML 的 Web 服务的 Java API (JAX-WS) 应用程序,您已准备好部署 Web 服务客户端应用程序。

对于基于 XML 的 RPC (JAX-RPC) 应用程序的 Java API,您需要使用组装工具配置客户端部署描述符绑定,以便客户端可以与服务器上部署的 Web 服务进行通信。