JVMSERVER resource definitions

A JVMSERVER resource defines the runtime environment for a JVM server.

The JVMSERVER resource defines the location of the JVM profile and the Language Environment® options that are required to create a Language Environment enclave and a JVM server in a CICS® region.

For information about working with BAS, see Working with BAS JVMSERVER resource definitions.

JVMSERVER resources in CICS bundles

You can use a CICS bundle to create, edit, and install a JVMSERVER resource definition. If you create a JVMSERVER resource in this way, you must use the CICS bundle to manage the lifecycle of that resource, and you cannot manage the resource independently.

You can inquire on a JVMSERVER resource that is dynamically generated by a CICS bundle, by using the EXEC CICS INQUIRE JVMSERVER or CEMT INQUIRE JVMSERVER command.

You cannot issue the DISCARD command against a JVMSERVER resource that is dynamically generated by a CICS bundle. You must discard the CICS bundle, and CICS applies the operation to the JVMSERVER resource.

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. 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 restart of CICS.

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 resource with the PURGE, FORCEPURGE, or KILL option to purge the tasks.

For more information about defining resources in CICS bundles, see Defining CICS bundles.

Syntax

Read syntax diagramSkip visual syntax diagramJVMSERVER( name)GROUP( groupname)DESCRIPTION( text)JVMPROFILE( jvmprofile)LERUNOPTS(DFHAXRO)LERUNOPTS( program)THREADLIMIT( number)STATUS(ENABLED)STATUS(DISABLED)

Attributes

JVMSERVER(name)
Specifies the 1 - 8 character name of the JVMSERVER resource.
Acceptable characters:

A-Z a-z 0-9 $ @ # . - _ % ? ! : | = , ;

Valid characters are listed as they render when the code page is IBM®-037. If a different EBCDIC code page is used, be aware of variant characters, as documented in Variant characters.

It is preferable not to use names that start with DFH because these characters are reserved for use by CICS.

CICS can delete or discard them and replace them with CICS resources when you upgrade or provide new function or fixes.

DESCRIPTION(text)
In this field, you can provide a description of the resource that you are defining. The description text can be up to 58 characters in length. No restrictions apply to the characters that you can use. However, if you use parentheses, ensure that each opening parenthesis ( has a matching closing one ). If you use the CREATE command, for each single apostrophe in the text code, use two apostrophes.
GROUP(groupname)
Every resource definition must have a GROUP name. The resource definition becomes a member of the group and is installed in the CICS system when the group is installed.
Acceptable characters:

A-Z 0-9 $ @ #

Valid characters are listed as they render when the code page is IBM-037. If a different EBCDIC code page is used, be aware of variant characters, as documented in Variant characters.

Any lowercase characters that you enter are converted to uppercase.

The GROUP name can be up to 8 characters in length.

JVMPROFILE(jvmprofile)
Specifies the 1 - 8 character name of the JVM profile containing the JVM options for running a JVM server. The file containing the JVM profile must have a file extension of .jvmprofile.
  • For a JVM profile for a JVMSERVER resource defined by online resource definition, the file path is specified by the system initialization parameter JVMPROFILEDIR.
  • For a JVM profile for a JVMSERVER resource that is defined in a CICS bundle, the file path is relative to the root directory of the CICS bundle. The file containing the JVM profile must be packaged in the CICS bundle with the JVMSERVER resource. For more information, see Referencing zFS artifacts in a bundle.
The JVM profile name cannot consist of a single or double period. The set of acceptable characters in the JVM profile name is more restricted when the JVMSERVER resource is defined in a CICS bundle using CICS Explorer.
Acceptable characters for JVMPROFILE name in an online JVMSERVER resource:

A-Z a-z 0-9 @ # . - _ % & ? ! : | " = , ; < >

Valid characters are listed as they render when the code page is IBM-037. If a different EBCDIC code page is used, be aware of variant characters, as documented in Variant characters.

Acceptable characters for JVMPROFILE name in a JVMSERVER resource definition in a CICS bundle:

A-Z a-z 0-9 @ # - _ % ! =

Valid characters are listed as they render when the code page is IBM-037. If a different EBCDIC code page is used, be aware of variant characters, as documented in Variant characters.

LERUNOPTS(DFHAXRO|program)
Specifies the 1 - 8 character name of the program that defines the runtime options for the Language Environment enclave. DFHAXRO is a supplied program that provides a set of default values. The source for DFHAXRO is in the hlq.SDFHSAMP library if you want to change the defaults for any of the Language Environment runtime options.
If you want to use a different program, put the program in the hlq.SDFHLOAD library and specify the program name in uppercase characters.
STATUS(ENABLED|DISABLED)
Specifies the initial status of the JVMSERVER resource when it is installed.
ENABLED
The JVM server runtime environment is available for use.
DISABLED
The JVM server runtime environment is not available for use.
THREADLIMIT(15|number)
Specifies the maximum number of threads that are allowed in the Language Environment enclave for the JVM server. Each thread runs under a T8 TCB. You can specify a limit in the range of 1 - 256 threads.
If you specify a thread limit that exceeds the maximum of 2000 threads that is allowed for the CICS region, taking into account all other enabled and disabled JVMSERVER resources, CICS allocates the remaining threads up to 2000 to the resource as the thread limit value. If CICS is already at the maximum number of JVMSERVER threads, the resource installs in a disabled state.
Tip: Liberty JVM servers require a minimum of six threads to run. If you specify a threadlimit lower than six for a Liberty JVM server, the threadlimit and threadcount automatically raises to six to prevent your Liberty becoming unresponsive.