Troubleshooting CMCI JVM server

The CMCI JVM server is a Liberty server that enables the CICS® management client interface (CMCI), an HTTP-based system management application programming interface (API). Learn how to resolve the most common problems people encounter in the CMCI JVM server.

Collecting MustGather data for IBM Support

If you want to contact IBM® Support for troubleshooting, see Troubleshooting data for JVM server problems.

Internal server error when using Gradle or Maven plug-in

Your application developer might see this error in the Gradle or Maven log when deploying a CICS bundle to the CICS bundle deployment API using the Gradle or Maven plug-in:
com.ibm.cics.bundle.deploy.BundleDeployException: An internal server error occurred. 
Please contact your system administrator

Check the messages.log of the CMCI JVM server for more details.

URIMAP installedurimap specifies a path which conflicts with EYUCMCIU error when starting SMSS

You might get this message when you start an SMSS that is configured with the CMCI JVM server:
EYUNX0110W CICPY01X URIMAP DFH£WUUR specifies a path which conflicts with EYUCMCIU

It occurs because an installed URIMAP, usually based on previous basic SMSS configuration, conflicts with the URIMAP resource that is being installed to enable the SMSS. Consider removing resources that were installed for the basic SMSS and prevent them from being reinstalled during the CICS startup. If you installed the TCPIPSERVICE and URIMAP resources by using the samples DFH$WUTC and DFH$WUUR, remove the resource definitions from your environment.

Authentication and authorization errors

If you see one of the following errors in the CMCI JVM server messages.log, there might be something wrong with the security setup.

CWWKS9104A: Authorization failed for user <user>:defaultRealm while invoking CMCI on /. 
            The user is not granted access to any of the required roles: [DEPLOYER].
CWWKS2911E: SAF Service RACROUTE_AUTH did not succeed 
            because the resource profile <profilePrefix>.CMCI.DEPLOYER 
            in class EJBROLE does not exist.
User ID not authorised for CICS transaction
Missing BBG.SYNC.<profilePrefix> ID(<user>) ACCESS(READ) READ RACF profile
CWWKS2912E: SAF service RACROUTE_FASTAUTH did not succeed 
            because user <user> is not authorized to access the resource profile BBG.SYNC.<user> 
            in class SURROGAT.
internalMessage=Failed to request CICSplex, 
exceptionString=com.ibm.cics.drake.cpsm.http.CPSMException: Response was NOTPERMIT, USRID
internalMessage=Failed to request region, 
exceptionString=com.ibm.cics.drake.cpsm.http.CPSMException: Response was NOTPERMIT, USRID
internalMessage=Error verifying bundle definition exists, 
exceptionString=com.ibm.cics.drake.cpsm.http.CPSMException: Response was NOTPERMIT, USRID

Make sure you configure access for corresponding roles and run all the required CLISTs, as described in Setting up CMCI in a single CICS region.

Error creating directory when using Gradle or Maven plug-in

If your application developer sees this message in the Gradle or Maven log when deploying a bundle to the CICS bundle deployment API, check that the deploy_userid has WRITE access to the bundles directory. The bundles directory is specified on the com.ibm.cics.jvmserver.cmci.bundles.dir option in the JVM profile of the CMCI JVM server.

[ERROR]  - Error creating directory '<directory>'.

For instructions on how to specify the bundles directory and grant access to deploy_userid, see Configuring the CMCI JVM server for the CICS bundle deployment API.

"CMCIPORT(nnnnn)" must be supplied

If you see this message in the STDERR log of the JVM server, it's because the CMCIPORT is not specified for the EYUSMSS data set.
EYUCMCIJ: java.lang.RuntimeException: EYUSMSS "CMCIPORT(nnnnn)" must be supplied

Specify the CMCIPORT option as described in Specifying CMCI and TCP/IP options for the SMSS.

Java version errors

6.3 The CMCI JVM server requires Java™ version 17 or later.

6.2 The CMCI JVM server requires Java version 11 or later.

6.1 The CMCI JVM server requires Java version 8 or later.

If the wrong Java version is configured, the following JVM profile error is shown in your JESMSGLG:
 16.13.51 JOB58788  +DFHSJ0210 IYK2ZOD1  025
    025              02/08/2024 16:13:51 IYK2ZOD1 An attempt to start a JVM for the
    025              JVMSERVER resource EYUCMCIJ has failed. Reason code:
    025              JVMPROFILE_ERROR.
In addition, the following error is printed to SYSPRINT:
 2024/02/08 16:13:51.303284 --- EYUCMCIJ E [LE-Thread-0] [DFHSJSC] *Exc* : 
           perform_cmci_checking() - CMCI JVM server requires a minimum Java version 17
 2024/02/08 16:13:51.308818 --- EYUCMCIJ E [LE-Thread-0] [DFHSJPP] *Exc* : 
           send_profile_message() - Problem encountered on line 29 of the JVM profile
           EYUSMSSJ.jvmprofile = CMCI JVM server requires a minimum Java version 17