运行程序控制示例

您可以运行通道和 COMMAREA 示例,了解 CICS 如何处理通道和容器或 COMMAREA。程序可以使用任一方法传递数据,但容器未限制为 32 KB。

开始之前

如运行 JCICS 示例中所述,确保配置了 CICS 区域。

关于此任务

本示例说明了如何使用 JCICS Program 类将通道和容器或 COMMAREA 传递至另一个程序。COMMAREA 示例还说明了如何在 Java 代码中的 ASCII 字符与本机 CICS 程序使用的 EBCDIC 间进行同等转换。

由样本 CICS 事务启动程序。 本示例使用以下 Java 类和 CICS 程序:

示例 事务 程序 Java 类
通道 JPC3 DFJ$JPC3 ProgramControl.ClassThree
DFJ$JPC4 ProgramControl.ClassFour
DFH$LCCC(C 语言) 不适用
COMMAREA JPC1 DFJ$JPC1 ProgramControl.ClassOne
DFJ$JPC2 ProgramControl.ClassTwo
DFH$LCCA(C 语言) 不适用

DFH$LCCA 和 DFH$LCCC 是可以使用任何受支持高级语言编写的标准 CICS 程序。如果没有 C 编译器,那么可以编写 COBOL 版本的 DFH$LCCA 和 DFH$LCCC,并使用它们来代替提供的 C 版本。

过程

  • 要运行通道示例:
    1. 在终端中输入 JPC3 事务。 在 Task.out(通常是您的终端)上会收到以下消息:
      Entering ProgramControlClassThree.main() 
      About to link to C program 
      Leaving ProgramControlClassThree.main()
    2. 清屏。 这样会显示以下消息:
      Entering ProgramControlClassFour.main()
      ProgramControlClassFour invoked with Container "IntData         " 
      ProgramControlClassFour invoked with Container "StringData      " 
      ProgramControlClassFour invoked with Container "Response        " 
      Leaving ProgramControlClassFour.main()
      列出容器的消息可能会以不同的顺序显示。
    在 CICS 中执行以下处理:
    1. 事务运行在 PROGRAM 资源 DFJ$JPC3 中定义的主 Java 类。Java 程序构造带有两个容器的 Channel 对象,并链接至 C 程序 DFH$LCCC。
    2. DFH$LCCC 处理容器、创建新的响应容器并返回。
    3. Java 程序检查响应容器中的数据并安排要启动的伪会话事务,向启动的事务传递 Channel 对象。
    4. 启动的事务运行在 PROGRAM 资源 DFJ$JPC4 中定义的另一个 Java 类。该 Java 程序使用 ContainerIterator 对象浏览 Channel,并显示找到的每个容器的名称。
  • 要运行 COMMAREA 示例:
    1. 输入 JPC1 CICS 事务以运行示例。 在 Task.out(通常是您的终端)上会收到以下消息:
          Entering ProgramControlClassOne.main()
          About to link to C program
          Leaving ProgramControlClassOne.main()
    2. 清屏。 这样会显示以下消息:
      Entering ProgramControlClassTwo.main()
      data received correctly
      Leaving ProgramControlClassTwo.main()

    在 CICS 中执行以下处理:

    1. 事务运行在 PROGRAM 资源 DFJ$JPC1 中定义的主 Java 类。Java 程序构造 COMMAREA,并链接至 C 程序 DFH$LCCA。
    2. C 程序处理 COMMAREA、对其进行更新并返回至 Java 程序。
    3. Java 程序检查 COMMAREA 中的数据并安排要启动的伪会话事务,向启动的事务传递其 COMMAREA 中更改的数据。
    4. 启动的事务运行在 PROGRAM 资源 DFJ$JPC2 中定义的另一个主 Java 类。该 Java 程序会再次读取 COMMAREA 并对其进行验证。
父主题: 运行 JCICS 示例