Rules for coding profiles
JVM profiles are text files encoded in EBCDIC when stored on the USS file system. When JVM profiles are created in a CICS® bundle, they can be edited on a workstation using any text editor. They must be converted to EBCDIC when they are transferred to USS. CICS Explorer® performs this conversion automatically when exporting a CICS bundle project to USS.
- Case sensitivity
-
All parameter keywords and operands are case-sensitive, and must be specified exactly as shown in Options for JVMs in a CICS environment, JVM system properties, or Node.js profile and command line options.
- Comments
-
To add comments or to comment out an option instead of deleting it, begin each line of the comment with a # symbol. Comment lines are ignored when the file is read by the launcher.
Blank lines are also ignored. You can use blank lines as a separator between options or groups of options.
The profile parsing code removes inline comments. An inline comment is defined as follows:- The comment starts with a # symbol
- It is preceded with one or more spaces (or tabs)
- It is not contained in quoted text
Table 1. Inline comment examples Code Result MYVAR=myValue # Comment
MYVAR=myValue MYVAR=#myValue # Comment
MYVAR=#myValue MYVAR=myValue "# Quoted comment" # Comment
MYVAR=myValue "# Quoted comment" - Continuation
-
For options the value is delimited by the end of the line in the text file. If a value that you are entering or editing is too long for an editor window, you can break the line to avoid scrolling. To continue on the next line, terminate the current line with the backslash character and a blank continuation character, as in this example:
STDERR=/example/a/long/path/which/you/would/like\ /to/break/over/a/line
Do not put more than one option on the same line.
- Including files
-
Use
%INCLUDE=<file_path>
to include a file in your profile. The file can contain common system-wide configuration that can be maintained separate to the profile. This enables configuration that is common to several profiles to be shared, giving more control and providing easier maintenance for profiles.The following rules apply:<file_path>
must be a fully qualified file in zFS.- Avoid use of relative directories at the start of
<file_path>
such as.
and..
. They are interpreted by UNIX System Services as relative to the Language Environment® current working directory, which can change in processing. - If
<file_path>
does not exist, or if the CICS region user ID does not have read access to<file_path>
message DFHSJ1308 is issued.
- Avoid use of relative directories at the start of
<file_path>
can contain symbols, for example&USSCONFIG;
.- Symbols
&DATE;
and&TIME;
are not allowed due to the formatting for these being set via the time zone option (TZ) that can be before or after the%INCLUDE
directive.
- Symbols
- The contents of
<file_path>
replace the %INCLUDE directive. - A profile can contain any number of %INCLUDE directives.
- Cyclic references result in message Skipping duplicate. For example, Profile-A can include Profile-B, and Profile-B include Profile-C; but if Profile-B includes Profile-A the directive is ignored.
- Multiple instances of options
-
If more than one instance of the same option is included in a profile, the value for the last option found is used, and previous values are ignored.
- UNIX System Services directory paths
-
Do not use quotation marks when specifying values for zFS files or directories in a profile.
Rules specific to JVM profiles
- Appending values
- Use the
+
character before a variable to append the value specified to the existing value of that variable using a comma separator, for example:
This is the equivalent to:LIBERTY_INCLUDE_XML=/path/file1 +LIBERTY_INCLUDE_XML=/path/file2
LIBERTY_INCLUDE_XML=/path/file1,/path/file2
- CEDA
-
The CEDA panels accept mixed case input for the JVMPROFILE field irrespective of your terminal UCTRAN setting. However, you must enter the name of a JVM profile in mixed case when you use CEDA from the command line or when you use another CICS transaction. Ensure that your terminal is correctly configured with uppercase translation suppressed. You can use the supplied CEOT transaction to alter the uppercase translation status (UCTRAN) for your own terminal, for the current session only.
- Class path separator character
-
Use the : (colon) character to separate the directory paths that you specify on a class path option, such as CLASSPATH_SUFFIX.
- Name of a profile
-
- The name of a JVM profile can be up to eight characters in length.
- JVM profiles on the file system must have the file extension .jvmprofile. The file extension is set to lowercase and must not be changed (only applies to JVM profiles).
- The name can be any name that is valid for a file in z/OS® UNIX System Services. Do not use a name beginning with DFH, because these characters are reserved for use by CICS.
- Because profiles are UNIX files, case is important. When you specify the name in CICS, you must enter it using the same combination of uppercase and lowercase characters that is present in the z/OS UNIX file name.
- Referencing environment variables
-
Environment variables can be referenced in other variables in the JVM profile using the symbol notation syntax. For more information , see Symbols used in the JVM profile.
- Storage sizes
-
When specifying storage-related options in a JVM profile, specify storage sizes in multiples of 1024 bytes. Use the letter K to indicate KB, the letter M to indicate MB, and the letter G to indicate GB. For example, to specify 6 291 456 bytes as the initial size of the heap, code -Xms in one of the following ways:
-Xms6144K -Xms6M