IBM SC34-6814-04 Server User Manual


 
program causes the relevant unit of work to be shunted. The PLTPI program
abends ASP1, and CICS runs the next program defined in the PLTPI table, if any.
v PLTSD programs run under the transaction that issued the PERFORM
SHUTDOWN command. The CEMT transaction is defined with WAIT(YES).
Therefore, if shutdown is as the result of a CEMT PERFORM SHUTDOWN
command, an in-doubt failure that occurs while running a PLTSD program causes
the unit of work to be shunted. If, however, shutdown is as the result of a user
transaction issuing an EXEC CICS PERFORM SHUTDOWN command, whether
an in-doubt failure causes the unit of work to be shunted or a forced decision
taken depends on the indoubt attributes of the user transaction. For details of the
indoubt options of the CEDA DEFINE TRANSACTION command, see the CICS
Resource Definition Guide.
Storage keys for PLT programs
You need to consider the following (whether or not you are running CICS with the
storage protection facility):
v The execution key in which your PLT programs are invoked
v The storage key of data storage obtained for your PLT programs.
Execution key for PLT programs
At PLT time CICS handles Java and non-Java programs differently.
Non-Java Programs
CICS always gives control to PLT programs in CICS key. Even if you specify
EXECKEY(USER) on the program resource definition, CICS forces CICS key when
it passes control to any PLT programs invoked during initialization or shutdown.
However, if a PLT-defined shutdown program itself passes control to another
program (via a link or transfer-control command), the program thus invoked
executes according to the execution key (EXECKEY) defined in its program
resource definition.
Important
You are strongly recommended to specify EXECKEY(CICS) when defining both PLT
programs and programs to which a PLT program passes control.
Java Programs
A Java program in the PLT runs in the key defined in its PROGRAM resource
definition (EXECKEY) and is not overridden to run in CICS key, unlike all other
program types.
When a Java program runs, a JVM is created if one does not already exist for that
JVM profile in the key the program is running. If REUSE=YES is specified in the
corresponding JVM profile, the JVM persists after the Java program has ended. If a
Java program, that is defined as EXECKEY(USER), was overridden to start in CICS
key at PLT time, any subsequent calls of that program would run in USER key and
would therefore not be able to reuse the JVM created when the program ran at PLT
time. Other Java programs that are defined with EXECKEY(USER) and use the
same JVM Profile would also not be able to access the JVM that is started at PLT
time. Therefore, CICS does not override the execution key of Java programs at PLT
time. To run an EXECKEY(USER) Java program in CICS key at PLT time do the
following:
430 Customization Guide
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|