使用来自 JCICS 库的类(例如正常 Java™ 类)。您的应用程序声明所需类型的引用,并使用 new 运算符创建了新的类实例。
请勿在 CICS Java 程序中使用终止函数。要获取有关为何不推荐终止函数的说明,请参阅 IBM SDK for z/OS Java Technology Edition V7(请参阅“故障诊断”部分)。
请勿通过发出 System.exit() 调用来终止 CICS Java 程序。 在 CICS 下运行 Java 应用程序时,会通过使用其他 Java 程序(称为 Java 包装器)来调用 public static void main() 方法。使用包装器时,CICS 会初始化 Java 应用程序环境,并且,更重要的是,清除在应用程序生存期间使用的任何过程。 终止 JVM(甚至使用清除返回码 0)可阻止运行该清除过程,并且可能导致数据不一致。 在 JVM 服务器中运行应用程序时使用 System.exit() 会立即终止该 JVM 服务器并停顿 CICS。
// Define a package name for the program
package unit_test;
// Import the JCICS package
import com.ibm.cics.server.*;
// Declare a class for a CICS application
public class JCICSTSQ
{
// The main method is called when the application runs
public static void main(CommAreaHolder cah)
{
try
{
// Create and name a Temporary Storage queue object
TSQ tsq = new TSQ();
tsq.setName("JCICSTSQ");
// Delete the queue if it exists
try
{
tsq.delete();
}
catch(InvalidQueueIdException e)
{
// Absorb QIDERR
System.out.println("QIDERR ignored!");
}
// Write an item to the queue
String transaction = Task.getTask().getTransactionName();
String message = "Transaction name is - " + transaction;
tsq.writeItem(message.getBytes());
}
catch(Throwable t)
{
System.out.println("Unexpected Throwable: " + t.toString());
}
// Return from the application
return;
}
}