开发 servlet 示例

CICS® 从 zFS, 加载并运行 Java™ 应用程序,因此您必须将编译后的应用程序部署到 zFS CICS可以访问的目录中。 您可以使用随每个 servlet 示例提供的 CICS 束项目将应用程序部署到在 CICS中运行的 Liberty JVM 服务器。 此主题仅适用于集成 CICS 模式的 Liberty。

开始之前

  • 必须创建示例 Web 应用程序,如 创建 servlet 示例中所述。
  • 您必须具有在区域中创建和安装 CICS 资源的许可权。
  • 必须安装 WebSphere® Application Server Developer Tools OSGi 应用程序开发功能部件。 请参阅 设置开发环境
  • 对于 CICS Java 数据库连接 (JDBC) 示例,必须提供样本 Db2® 数据库。 要部署此示例,必须创建并安装 DB2CONN CICS 资源定义。 确保其状态为 connected。 在 CICS DB2CONN 定义中指定的 Db2 计划必须与如下指定的程序包列表绑定:
    PKLIST(NULLID.*)
要点: 如果您正在使用 CICS Explorer® 或运行 V2022-03 或更高版本的基于 Eclipse的 IDE ,那么缺省编译器合规性级别必须与应用程序或样本所部署到的目标运行时的 Java 版本相匹配,以避免发生问题。 您可以在 CICS Explorer 中通过选择 "首选项" ,然后选择 "Java" ,然后选择 "编译器" 来更改此设置。

关于此任务

部署和安装应用程序的首选方法是使用 CICS 束项目。 通过使用此方法,您可以使用 CICS 工具来管理这些束项目应用程序资源。 CICS 束项目将一组插件项目, 动态 Web 项目和 CICS 资源作为单个单元进行逻辑部署和管理。 您可将本方法用于简单 Web 应用程序(例如 Hello World 示例)和更复杂的 Web 应用程序(例如其他 servlet 示例)。

部署和安装应用程序的备选方法是使用 Liberty 部署机制来部署 WAR 或 EBA 文件。 您可以将项目作为 WAR 或 EBA 文件导出,并使用 FTP 将该文件复制到 Liberty JVM 服务器的 dropins 目录。 您可将本方法用于简单 Web 应用程序,例如 Hello World 示例。

过程

  • 使用 CICS 束项目部署示例

    要使用 CICS 束项目部署示例,可以使用 IBM® CICS SDK for Java

    1. 右键单击捆绑软件项目,然后单击 将捆绑软件项目导出到 z/OS UNIX 文件系统
    2. 单击 导出到文件系统中的特定位置 ,然后单击 下一步
    3. 遵循向导将束部署到 zFS 中可供 CICS 区域访问的位置。
      要使用样本组 DFH$WLP 中的样本 BUNDLE 资源定义,请使用 /tmp/cicsts53 作为 zFS上的父目录。
      CICS Explorer 将 CICS 束和关联项目部署到 zFS。 如果 CICS 束包含 .osgibundle.warbundle 工件,那么将按照其项目构建属性的指定来构建相关联的项目,并且还将导出这些项目。
      注: 对于 "指向 Liberty 的 CICS 链接" 样本,未提供样本 BUNDLE 资源。 而必须改为创建此资源。 有关更多信息,请参阅 将 CICS 束中的 Java EE 应用程序部署到 Liberty JVM 服务器
    4. 编辑样本 DFHWLP.jvmprofile 以使用 -Dcom.ibm.cics.jvmserver.wlp.autoconfigure=true 系统属性开启自动配置选项。
      server.xml 是自动生成的,可在 WLP_USER_DIR/servers/server_name 目录中找到。 您可以使用 " z/OS® UNIX 文件" 视图来浏览目录结构以编辑文件。 您必须为 -Dcom.ibm.cics.jvmserver.wlp.server.host-Dcom.ibm.cics.jvmserver.wlp.server.http.port-Dcom.ibm.cics.jvmserver.wlp.server.https.port(根据您自己的环境)指定值。 对于 JDBC 示例,将 -Dcom.ibm.cics.jvmserver.wlp.jdbc.driver.location 属性设置为 Db2 JDBC 驱动程序位置。
      有关更多信息,请参阅 手动配置 Liberty 的 CICS DB2® JDBC 类型 2 驱动程序数据源
      注: 对于 "指向 Liberty 的 CICS 链接" 样本,请编辑 server.xml 以在 <featureManager> 标记中添加 <feature>cicsts:link-1.0</feature>
    5. 在 CICSplex Explorer 视图中,选择要在其中运行 servlet 示例的 CICS 区域。
    6. 安装 JVMSERVER 资源 DFHWLP(位于样本组 DFH$WLP 中)。
      样本资源在 CICS 区域中创建 Liberty JVM 服务器。

      Liberty JVM 服务器在 zFS 中创建目录结构,包括 Web 应用程序的 server.xml 文件和 dropins 目录。 您可以通过单击 操作 > Java > JVM 服务器来检查 JVM 服务器的状态。

    7. 通过单击 定义 > 束定义打开 "束定义" 视图。
      此视图列示 CICS 区域的所有束定义。
    8. 在样本组 DFH$WLP 中安装样本束资源定义。
      注: 对于 CICS 链接到 Liberty 样本,必须改为安装在步骤 3 中创建的束定义。
      下表列出了示例所需的样本束资源定义。
      表 1. servlet 示例所需的样本束资源定义
      示例 所需的束资源定义
      CICS Hello World 示例 WLPHELLO
      CICS 临时存储器队列 (TSQ) 示例 WLPTSQ
      CICS Java 数据库连接 (JDBC) 示例 WLPJDBC
      CICS 链接到 Liberty 示例 创建的用户

      样本定义将 /tmp/cicsts53 指定为部署 CICS 束的位置。

    9. 如果已配置 cicsts:security-1.0 功能部件或正在使用自动配置,请确保还配置了必需的安全规则和配置元素。
    10. 可选: 您可能想要更改提供的样本。 如果先前已部署同一个样本并且现在进行重新部署,那么必须禁用并重新启用束以便运行新版本的样本。
      WAR 或 EBA 文件 (取决于示例) 装入到 Liberty 服务器中,并且所有 OSGi 捆绑软件都在 OSGi 框架中注册。
  • 使用 Liberty 部署机制部署简单示例

    要使用此方法来部署示例 (例如, Hello World) ,必须在 CICS中配置和启用 JVM 服务器。 启用 JVM 服务器会创建 dropins 目录。

    1. 编辑 DFHWLP.jvmprofile 以使用 -Dcom.ibm.cics.jvmserver.wlp.autoconfigure=true 系统属性开启自动配置。
      注: 对于 "指向 Liberty 的 CICS 链接" 样本,请编辑 server.xml 以在 <featureManager> 标记中添加 <feature>cicsts:link-1.0</feature>
    2. 在 CICSplex Explorer 视图中,选择要在其中运行 servlet 示例的 CICS 区域。
    3. 安装 JVMSERVER 资源 DFHWLP(位于样本组 DFH$WLP 中)。
      样本资源在 CICS 区域中创建 Liberty JVM 服务器。

      Liberty JVM 服务器在 zFS 中创建目录结构,包括 Web 应用程序的 server.xml 文件和 dropins 目录。 您可以通过单击 操作 > Java > JVM 服务器来检查 JVM 服务器的状态。

    4. 在 "资源" 透视图中,右键单击 动态 Web 项目 ,并将其作为 WAR 或 EBA 文件导出到本地工作站。
    5. 使用 FTP 以二进制方式将 WAR 或 EBA 文件复制到 dropins 目录。
    6. 您可以编辑 server.xml 文件以更改主机名和端口号。

结果

您已将包含 Servlet 和 JSP 页面的 Web 应用程序部署到在 CICS 中运行的 Liberty JVM 服务器,并将 Liberty JVM 服务器配置为使用主机名和端口号。

下一步操作

您可以从 Web 浏览器访问 Web 应用程序以检查 Liberty JVM 服务器的配置,如 运行 servlet 示例中所述。