在 Axis2 JVM 服务器中部署 Java 提供者方式 Web Service

您可以在 CICS® 中将 Axis2 应用程序部署为提供者方式 Web Service。 这些应用程序通常是使用 JAX-WS 生成的,并且可以在支持 Java™ 的管道中进行托管。

由于下列其中一个原因,您可能希望使用此方法来部署 Java 应用程序:
  • 您具有使用 Axis2 处理程序接口的现有投资。
  • 您想要使用 CICS 管道配置。
注: Axis2-style 应用程序不使用 WEBSERVICE 资源。 它们使用 Axis2 编程模型与 CICS 进行交互,因此无法使用某些 CICS Web Service 支持。 Axis2-style 应用程序不完全支持以下服务:

开始之前

您必须具有适合在 Axis2中部署的 Java 应用程序,例如使用 JAX-WS 的 POJO 应用程序。 对于此任务,以下 POJO 应用程序用作示例:
/**
				* Simple example
				*/
				@javax.jws.WebService(targetNamespace = "com.ibm.cics.example", name = "pojoExample")
				public class TestAxis2
				{
				public String getMessage(String input)
				{
				return "CICS got this: '" + input + "'";
				}
				}

此应用程序指定用于生成 WSDL 的 XML 名称空间以及要与 Web Service 关联的名称。

必须编译此应用程序的 Java 代码并运行 JAX-WS 生成器,以将应用程序打包到名为 TestAxis2.jar 的 JAR 文件中。 您可以通过发出以下代码来执行此操作:
javac TestAxis2.java
wsgen -cp . TestAxis2 -wsdl
jar -cvf TestAxis2.jar *

JAX-WS 生成器还会创建 WSDL 文档以及 Axis2所使用的绑定。

关于此任务

要部署 Axis2 Web Service ,必须为 Web Service 创建管道基础结构。 创建管道后,可以创建 Web Service。 您可以根据需要为任意数量的 Web Service 复用创建的管道。 以下步骤描述如何创建管道和 Web Service。
注: 在此任务中未创建或安装任何 WEBSERVICE 资源。

过程

  1. 创建管道基础结构。
    1. 为 Java 管道创建 Web Service 基础结构。 有关更多信息,请参阅 为 SOAP 服务提供程序创建 CICS 基础结构
    2. 创建 Axis2 存储库。
      为此,请创建位于 $CICS_HOME/lib/pipeline/repository中的所提供存储库的副本。
    3. <repository> 元素添加到管道配置文件。 此元素必须指定您创建的 Axis2 存储库的名称。
    4. 创建并启用 PIPELINE 资源。
  2. 对于与管道关联的每个 Web Service ,请重复以下步骤以创建 Web Service。
    1. 将 Axis2 应用程序部署到 Axis2 存储库。 例如,在示例中创建的 JAR 文件必须部署到存储库目录中名为 servicejars 的目录。 如果此目录不存在,那么必须创建此目录。
    2. 定义并安装 Web Service 的 URIMAP 资源。
      URIMAP 资源必须指定与 Web Service 关联的 URI 和 PIPELINE 资源。 URI 必须遵循 URI 的 Axis2 命名约定。 缺省 Axis2 命名约定为: / name_of_service Service. name_of_port Port/ suffix ,其中 name_of_service 是 WSDL 中 Web Service 的名称, name_of_port 是 WSDL 中端口的名称, suffix 是您可以定义的可选后缀。 对于以上示例,可以使用以下 URIMAP 资源:
      Urimap : EXAMPLE
      Group : EXAMPLE
      STatus : Enabled
      USAge : Pipeline
      SCheme : HTTP
      POrt : No
      HOST : *
      PAth : /TestAxis2Service.pojoExamplePort/example/TestAxis2
      TRansaction : CPIH
      PIpeline : EXAMPLE
      此示例假定所使用的 PIPELINE 资源称为 EXAMPLE。

下一步操作

测试 Web Service 是否正确运行。