RC 113 after fixing for LIBJVM.SO Not Found

General discussion on the JZOS batch launcher and toolkit
Post Reply
Nalini
Posts: 27
Joined: Thu Dec 30, 2004 7:03 pm

RC 113 after fixing for LIBJVM.SO Not Found

Post by Nalini »

Hello,

I am having a problem with getting an RC 113. I looked in the forum & it looks like it is a possible path, etc problem getting to the JVM. I have put in the explicit path & libpath statements as suggested before. But, still no luck. I am able to execute java -version under the OMVS shell when I use the explicit path.

One thing I had to do was that since I was getting an error for LIBJVM.SO not found because I did not have authority to access /etc/profile on this system, I put in some explicit export statements as per another forum entry.

Appreciate any suggestions on further ways to proceed.

Thanks,
Nalini Elkins
Inside Products, Inc.


02:48:42 JZOSVM14(N): log level has been set to: T
02:48:42 JZOSVM14(T): -> JzosVM()
02:48:42 JZOSVM14(N): Copyright (C) 2004 Dovetailed Technologies LLC. All rights reserved.
02:48:42 JZOSVM14(N): JZOS Version 1.2.0
02:48:42 JZOSVM14(T): <- JzosVM()
02:48:42 JZOSVM14(T): -> run()
02:48:42 JZOSVM14(I): Region requested = 0K, Actual below/above limit = 9M / 513M
02:48:42 JZOSVM14(T): -> adoptEnvironment()
02:48:42 JZOSVM14(T): Writing shell script to child's stdin:
02:48:42 JZOSVM14(T): # This is a shell script which configures
02:48:42 JZOSVM14(T): # any environment variables for the Java JVM.
02:48:42 JZOSVM14(T): # Variables must be exported to be seen by the launcher.
02:48:42 JZOSVM14(T): . etc/profile
02:48:42 JZOSVM14(T): export PATH=/bin:/usr/sbin:
02:48:42 JZOSVM14(T): export LIBPATH=/lib:/usr/lib:
02:48:42 JZOSVM14(T): export NLSPATH=/usr/lib/nls/msg/%L/%N
02:48:42 JZOSVM14(T): export LANG=C
02:48:42 JZOSVM14(T): export TZ=CST06CDT
02:48:42 JZOSVM14(T): export JZOS_HOME=/usr/lpp/its/jzos
02:48:42 JZOSVM14(T): export JAVA_HOME=/usr/lpp/java/J1.4
02:48:42 JZOSVM14(T): TOMCAT_HOME=/usr/lpp/its
02:48:42 JZOSVM14(T):
02:48:42 JZOSVM14(T): export PATH="$PATH":"/bin:"${JAVA_HOME}"/bin:
02:48:42 JZOSVM14(T):
02:48:42 JZOSVM14(T): LIBPATH="$LIBPATH":"${JAVA_HOME}"/bin
02:48:42 JZOSVM14(T): LIBPATH="$LIBPATH":"${JAVA_HOME}"/bin/classic
02:48:42 JZOSVM14(T): LIBPATH="$LIBPATH":"${JZOS_HOME}"
02:48:42 JZOSVM14(T): export LIBPATH="$LIBPATH":
02:48:42 JZOSVM14(T):
02:48:42 JZOSVM14(T): CLASSPATH="${JAVA_HOME}/lib/tools.jar"
02:48:42 JZOSVM14(T): CLASSPATH="$CLASSPATH":"${TOMCAT_HOME}/bin/bootstrap.jar"
02:48:42 JZOSVM14(T): CLASSPATH="$CLASSPATH":"${TOMCAT_HOME}/derby"
02:48:42 JZOSVM14(T): CLASSPATH="$CLASSPATH":"${JZOS_HOME}/jzos.jar"
02:48:42 JZOSVM14(T): export CLASSPATH="$CLASSPATH":
02:48:42 JZOSVM14(T):
02:48:42 JZOSVM14(T): # Set JZOS specific options
02:48:42 JZOSVM14(T): # Use this variable to specify encoding for DD STDOUT and STDERR
02:48:42 JZOSVM14(T): #export JZOS_OUTPUT_ENCODING=Cp1047
02:48:42 JZOSVM14(T): # Use this variable to prevent JZOS from handling MVS operator commands
02:48:42 JZOSVM14(T): #export JZOS_ENABLE_MVS_COMMANDS=false
02:48:42 JZOSVM14(T): # Use this variable to supply additional arguments to main
02:48:42 JZOSVM14(T): #export JZOS_MAIN_ARGS=""
02:48:42 JZOSVM14(T):
02:48:42 JZOSVM14(T): # Configure JVM options
02:48:42 JZOSVM14(T): # Note that Tomcat requires default ASCII file.encoding
02:48:42 JZOSVM14(T): IJO="-Xms128m -Xmx512m"
02:48:42 JZOSVM14(T): IJO="$IJO -Djzos.home=${JZOS_HOME}"
02:48:42 JZOSVM14(T): IJO="$IJO -Dfile.encoding=ISO8859-1"
02:48:42 JZOSVM14(T): IJO="$IJO -Dcatalina.base=${TOMCAT_HOME}"
02:48:42 JZOSVM14(T): IJO="$IJO -Dcatalina.home=${TOMCAT_HOME}"
02:48:42 JZOSVM14(T): IJO="$IJO -Djava.io.tmpdir=${TOMCAT_HOME}/temp"
02:48:42 JZOSVM14(T): IJO="$IJO -Djava.endorsed.dirs="
02:48:42 JZOSVM14(T): IJO="$IJO -Dderby.system.home="
02:48:42 JZOSVM14(T): IJO="${IJO}${TOMCAT_HOME}/common/endorsed"
02:48:42 JZOSVM14(T): export IBM_JAVA_OPTIONS="$IJO "
02:48:42 JZOSVM14(T):
02:48:42 JZOSVM14(T): export JAVA_DUMP_HEAP=false
02:48:42 JZOSVM14(T): export JAVA_PROPAGATE=NO
02:48:42 JZOSVM14(T): export IBM_JAVA_ZOS_TDUMP=NO
02:48:42 JZOSVM14(T): waiting for child
02:48:43 JZOSVM14(E): child process exited with exit code 1

02:48:43 JZOSVM14(T): <- adoptEnvironment()
02:48:43 JZOSVM14(T): <- run()
02:48:43 JZOSVM14(T): -> cleanup()
JZOSVM - failed, no JVM created. RC=113.
02:48:43 JZOSVM14(T): <- cleanup()
02:48:43 JZOSVM14(T): -> ~JzosVM()
02:48:43 JZOSVM14(T): <- ~JzosVM()
dovetail
Site Admin
Posts: 2022
Joined: Thu Jul 29, 2004 12:12 pm

Post by dovetail »

Nalini -

There looks to be an error in your STDENV shell script:

02:48:43 JZOSVM14(E): child process exited with exit code 1

It looks like the problem might be the following line in your STDENV script:

. etc/profile

This is probably failing, causing the child shell process to exit with an error.
I think that your intention was to have this line commented out, correct?

Regards,
Kirk Wolf
dovetail
Site Admin
Posts: 2022
Joined: Thu Jul 29, 2004 12:12 pm

Post by dovetail »

And I think that we might be able to improve the information that you get when it fails in this manner. Its not as clear as I would like; we'll see about improving it in the future. Thanks.
Nalini
Posts: 27
Joined: Thu Dec 30, 2004 7:03 pm

Post by Nalini »

Thanks, that got me a little further!

Now, the task just seems to hang forever 'waiting for child'. I let this stay up for more than 2 hours and nothing ever happened. This is on a real z/OS system - not FLEX-ES. I recall that on FLEX-ES, startup can take quite a while!

It may be possible that I don't have some authority.

Thanks in advance for your help.

Nalini


06:33:11 JZOSVM14(N): log level has been set to: T
06:33:11 JZOSVM14(T): -> JzosVM()
06:33:11 JZOSVM14(N): Copyright (C) 2004 Dovetailed Technologies LLC. All rights reserved.
06:33:11 JZOSVM14(N): JZOS Version 1.2.0
06:33:11 JZOSVM14(T): <- JzosVM()
06:33:11 JZOSVM14(T): -> run()
06:33:11 JZOSVM14(I): Region requested = 0K, Actual below/above limit = 9M / 513M
06:33:11 JZOSVM14(T): -> adoptEnvironment()
06:33:13 JZOSVM14(T): Writing shell script to child's stdin:
06:33:13 JZOSVM14(T): # This is a shell script which configures
06:33:13 JZOSVM14(T): # any environment variables for the Java JVM.
06:33:13 JZOSVM14(T): # Variables must be exported to be seen by the launcher.
06:33:13 JZOSVM14(T): # etc/profile
06:33:13 JZOSVM14(T): export PATH=/bin:/usr/sbin:
06:33:13 JZOSVM14(T): export LIBPATH=/lib:/usr/lib:
06:33:13 JZOSVM14(T): export NLSPATH=/usr/lib/nls/msg/%L/%N
06:33:13 JZOSVM14(T): export LANG=C
06:33:13 JZOSVM14(T): export TZ=CST06CDT
06:33:13 JZOSVM14(T): export JZOS_HOME=/usr/lpp/its/jzos
06:33:13 JZOSVM14(T): export JAVA_HOME=/usr/lpp/java/J1.4
06:33:13 JZOSVM14(T): TOMCAT_HOME=/usr/lpp/its
06:33:13 JZOSVM14(T):
06:33:13 JZOSVM14(T): export PATH="$PATH":"/bin:"${JAVA_HOME}"/bin:
06:33:13 JZOSVM14(T):
06:33:13 JZOSVM14(T): LIBPATH="$LIBPATH":"${JAVA_HOME}"/bin
06:33:13 JZOSVM14(T): LIBPATH="$LIBPATH":"${JAVA_HOME}"/bin/classic
06:33:13 JZOSVM14(T): LIBPATH="$LIBPATH":"${JZOS_HOME}"
06:33:13 JZOSVM14(T): export LIBPATH="$LIBPATH":
06:33:13 JZOSVM14(T):
06:33:13 JZOSVM14(T): CLASSPATH="${JAVA_HOME}/lib/tools.jar"
06:33:13 JZOSVM14(T): CLASSPATH="$CLASSPATH":"${TOMCAT_HOME}/bin/bootstrap.jar"
06:33:13 JZOSVM14(T): CLASSPATH="$CLASSPATH":"${TOMCAT_HOME}/derby"
06:33:13 JZOSVM14(T): CLASSPATH="$CLASSPATH":"${JZOS_HOME}/jzos.jar"
06:33:13 JZOSVM14(T): export CLASSPATH="$CLASSPATH":
06:33:13 JZOSVM14(T):
06:33:13 JZOSVM14(T): # Set JZOS specific options
06:33:13 JZOSVM14(T): # Use this variable to specify encoding for DD STDOUT and STDERR
06:33:13 JZOSVM14(T): #export JZOS_OUTPUT_ENCODING=Cp1047
06:33:13 JZOSVM14(T): # Use this variable to prevent JZOS from handling MVS operator commands
06:33:13 JZOSVM14(T): #export JZOS_ENABLE_MVS_COMMANDS=false
06:33:13 JZOSVM14(T): # Use this variable to supply additional arguments to main
06:33:13 JZOSVM14(T): #export JZOS_MAIN_ARGS=""
06:33:13 JZOSVM14(T):
06:33:13 JZOSVM14(T): # Configure JVM options
06:33:13 JZOSVM14(T): # Note that Tomcat requires default ASCII file.encoding
06:33:13 JZOSVM14(T): IJO="-Xms128m -Xmx512m"
06:33:13 JZOSVM14(T): IJO="$IJO -Djzos.home=${JZOS_HOME}"
06:33:13 JZOSVM14(T): IJO="$IJO -Dfile.encoding=ISO8859-1"
06:33:13 JZOSVM14(T): IJO="$IJO -Dcatalina.base=${TOMCAT_HOME}"
06:33:13 JZOSVM14(T): IJO="$IJO -Dcatalina.home=${TOMCAT_HOME}"
06:33:13 JZOSVM14(T): IJO="$IJO -Djava.io.tmpdir=${TOMCAT_HOME}/temp"
06:33:13 JZOSVM14(T): IJO="$IJO -Djava.endorsed.dirs="
06:33:13 JZOSVM14(T): IJO="$IJO -Dderby.system.home="
06:33:13 JZOSVM14(T): IJO="${IJO}${TOMCAT_HOME}/common/endorsed"
06:33:13 JZOSVM14(T): export IBM_JAVA_OPTIONS="$IJO "
06:33:13 JZOSVM14(T):
06:33:13 JZOSVM14(T): export JAVA_DUMP_HEAP=false
06:33:13 JZOSVM14(T): export JAVA_PROPAGATE=NO
06:33:13 JZOSVM14(T): export IBM_JAVA_ZOS_TDUMP=NO
06:33:13 JZOSVM14(T): waiting for child
dovetail
Site Admin
Posts: 2022
Joined: Thu Jul 29, 2004 12:12 pm

Post by dovetail »

I'm not sure why it is hanging.

Can you log in to a unix shell using the same userid as running under the batch job? If so, try copying the STDENV input into an HFS file and execute it to see if it hangs or gets an error.

I think that we have seen this before, and it turned out to be a problem with the security setup for the batch userid.
Nalini
Posts: 27
Joined: Thu Dec 30, 2004 7:03 pm

Post by Nalini »

I am finally getting back to this. A LOT of things came up last month - good to have so much activity, but..

Anyway, do you have some specifications on what authorities are needed for the batch user id so I can get that checked out first? I have a feeling that this may be something with forking a new task. Does that make any sense?

Thanks again for all your help.

Nalini
dovetail
Site Admin
Posts: 2022
Joined: Thu Jul 29, 2004 12:12 pm

Post by dovetail »

Nalini,

If you can login to the userid from a regular telnet shell, then it should be fine. The configuration for a userid to use USS depends somewhat on the security package (RACF, ACF2, Top-Secret).

Here's a good reference for configuring and setting up USS under z/OS:

http://www.redbooks.ibm.com/abstracts/sg246989.html

Kirk Wolf
Guest

Post by Guest »

After fooling around for a while, I found this. The LIBPATH setting did not have a pointer to /java/lib.

The userid authorities did not make any difference. Hope this helps someone else!
dovetail
Site Admin
Posts: 2022
Joined: Thu Jul 29, 2004 12:12 pm

Post by dovetail »

Nalini -

Thanks for the information.

I think that you mean /usr/lib, not /java/lib, right? If so, that might explain why your shell process is hanging. I looked closer at your script, and I now notice that you aren't dotting in /etc/profile. If you don't do that, you should probably set at least the following:

PATH=/bin:/usr/bin:$JAVA_HOME/bin
LIBPATH=/lib:/usr/lib:$JAVA_HOME/bin:$JAVA_HOME/bin/classic
LANG=C
TC={as in /etc/profile}
NLSPATH={as in /etc/profile}

Sorry that I didn't notice this earlier.

Regards,
Kirk Wolf
Post Reply