Failed to start WSTOMSTC as PROC - java.lang.RuntimeException: default directory must be absolute
search cancel

Failed to start WSTOMSTC as PROC - java.lang.RuntimeException: default directory must be absolute

book

Article ID: 267260

calendar_today

Updated On:

Products

Endevor

Issue/Introduction

Started Endevor Web Services WSTOMSTC as started task (PROC), ENF is unable to spawn the Endevor spawn task WSEWSSTC. 

Found following error in the WSTOMSTC log:

 SEVERE: StandardWrapper.Throwable
 java.lang.NoClassDefFoundError: java.nio.file.FileSystems$DefaultFileSystemHolder (initialization failure)
     at java.lang.J9VMInternals.initializationAlreadyFailed(J9VMInternals.java:107)
     at java.nio.file.FileSystems.getDefault(FileSystems.java:187)

..

 Caused by: java.lang.RuntimeException: default directory must be absolute

Environment

All supported Endevor release.

Cause

WSTOMSTC log shows:

12.23.45 STC08553  IEF695I START WSTOMSTC WITH JOBNAME WSTOMSTC IS ASSIGNED TO USER WSTOMSTC, GROUP STCGROUP

INFO: Command line argument: -Duser.dir=.

WSTOMSTC proc runs under USER WSTOMSTC, '.' is the relative path (means current directory) - WSTOMSTC user does not have an absolute path to home dir (PWD) or the home dir path is invalid. 

WSTOMSTC was unable to connect to ENF due to the above error,  thus no WSEWSSTC (Endevor spawn task) got submitted by ENF.  

Resolution

Make sure WSTOMSTC user ID OMVS home dir (user.dir) is valid and have absolute path. - for example, use $TOMCAT_HOME_DIR value defined in WSTOMINS as the WSTOMSTC user ID's home dir. 

Then restart WSTOMSTC.

Additional Information

Tomcat user profile OMVS setting - uss path is case sensitive 

HOME= /U/USERID
PROGRAM= /BIN/SH      

The above setting can also cause Tomcat user's home directory not found (PWD undefined), and lead to java.lang.RuntimeException: default directory must be absolute error at runtime.

The correct OMVS setting should be:

HOME= /u/USERID
PROGRAM= /bin/sh      

 

According to IBM document:

  • The user's home directory in the user's RACF OMVS profile is specified and not blank.
  • The user's home directory is specified as a full path name.
  • The user's home directory exists in the file system.
  • The user's home directory is part of a file system that is mounted.
  • The user's home directory is accessible to the user. Set the Unix permissions on the home directory to read, write, and execute permission for the user. For a Unix directory, execute permission is needed to allow a user to change to the directory.