SET JVMSERVER

Change the status of an installed JVMSERVER resource.

SET JVMSERVER

Read syntax diagramSkip visual syntax diagram SET JVMSERVER ( data-value ) THREADLIMIT( data-value)ENABLESTATUS( cvda)ENABLEDDISABLEDPHASEOUTPURGETYPE( cvda)PURGEFORCEPURGEKILL

Conditions: INVREQ, NORMAL, NOTAUTH, NOTFND

This command is threadsafe.

Description

The SET JVMSERVER command enables, disables, and modifies a JVM server.

To change the status of a JVMSERVER resource that was defined and installed in a CICS® bundle, enable or disable the CICS bundle. If you have disabled the CICS bundle, but you need to purge tasks that are still running in the JVM server, you can issue the SET JVMSERVER DISABLED command against the dynamically generated JVMSERVER resource with the PURGE, FORCEPURGE, or KILL option to purge the tasks.

To modify the attributes of a JVMSERVER resource that was defined and installed in a CICS bundle, use the resource editor in the CICS Explorer to modify the definition in the CICS bundle, and install a new version of the CICS bundle or of the application with which it was deployed. To update the definition, replace the old version of the CICS bundle with the new one, following the instructions in Working with bundles in the CICS Explorer product documentation.
  • CICS bundles that were deployed on their own or with a platform can be updated individually.
  • If the CICS bundle was deployed as part of an application or with an application binding, update the whole application.
You can use the SET JVMSERVER command to change the attributes of the dynamically generated resource, but these changes are not cataloged and are not recovered across a warm start of CICS.

Options

ENABLESTATUS(cvda)
Set the status of the JVMSERVER resource:
ENABLED
Enable the JVMSERVER resource. CICS creates a Language Environment® enclave, starts a JVM, and performs the processing required to enable the JVMSERVER. Once the JVMSERVER is enabled, applications can take extra time before they are fully ready to process requests.
DISABLED
Disable the JVMSERVER resource. CICS completes processing tasks associated with the JVM server and then stops the JVM and the Language Environment enclave.
JVMSERVER(data-value)
Specify the 8-character name of the JVMSERVER resource that you want to change.
PURGETYPE(cvda)
Specifies how tasks associated with the JVM server are to be purged when you disable the resource. If you do not set a value, CICS uses the PHASEOUT option.
FORCEPURGE
PURGE must be issued before FORCEPURGE is issued.
Tasks that are running in the JVM server are force purged. Any CICS threads that are running in the JVM are stopped. The JVMSERVER resource remains in the BEING DISABLED state while there are remaining tasks or CICS threads. Data integrity is not guaranteed.
KILL
FORCEPURGE must be issued before KILL is issued.
Tasks that are running in the JVM server are terminated. Any CICS threads that are running in the JVM are stopped. The JVMSERVER resource enters the DISABLED state and all work is terminated. However, CICS might be left in an unstable state.
System and data integrity are not guaranteed. CICS might terminate abnormally.
It is considered best practice to restart the CICS region following a JVMSERVER KILL.
PHASEOUT
Tasks that are running in the JVM server continue until completion, but no new work is started. When all the tasks are complete, the JVMSERVER resource enters the DISABLED state. PHASEOUT is the default value. If the JVM server is a Liberty JVM server, Liberty is requested to quiesce, which can take several minutes to complete, and often takes longer than an OSGi JVM server.
PURGE
PHASEOUT must be issued before PURGE is issued.
Tasks running in the JVM server are purged. Any CICS threads that are running in the JVM are stopped. CICS purges tasks only when system and data integrity can be maintained. The JVMSERVER resource remains in the BEING DISABLED state while there are remaining tasks or CICS threads.
THREADLIMIT(data-value)

Set the maximum number of CICS threads allowed in the JVM. Each CICS thread is attached using a T8 TCB. The valid range is 1 - 256. If you specify a value that exceeds the maximum of 2000 for the CICS region, taking into account all enabled and disabled JVMSERVER resources, THREADLIMIT is set to the remaining CICS threads up to 2000.

Conditions

INVREQ
RESP2 values:
1
Insufficient CICS threads available to satisfy the requested maximum number.
2
ENABLESTATUS value is not valid.
3
THREADLIMIT value is not valid because it is 0 or greater than 256.
4
The Language Environment enclave was not created successfully.
7
The JVMSERVER cannot be disabled because it is in the enabling state.
8
You must PURGE the JVM server before you can use the FORCEPURGE option.
9
The PURGETYPE option has an invalid CVDA value.
10
You must FORCEPURGE the JVM server before you can use the KILL option.
11
You must PHASEOUT the JVM server before you can use the PURGE option.
300
You specified an operation that is invalid for a resource that is installed by a BUNDLE resource.
301
You can issue a PURGE, FORCEPURGE, or KILL on a bundle-installed JVMSERVER only if a PHASEOUT has first been implicitly issued by setting the parent BUNDLE resource to DISABLED. If the BUNDLE has been disabled but the JVMSERVER remains in the "being disabled" state for longer than you would expect for work to quiesce, or if you do not want to wait for work to quiesce, then consider issuing a PURGE request against the JVMSERVER resource.
NORMAL
RESP2 value:
1
The number of available CICS threads is less than the THREADLIMIT value requested.
NOTAUTH
RESP2 values:
100
The user that is associated with the issuing task is not authorized to use this command.
101

The user associated with the issuing task is not authorized to access this jvmserver.

NOTFND
RESP2 value:
3
The JVMSERVER resource was not found.