Howdy!
I have downloaded and installed Java 1.4.2, JZOS 1.2.4, and Tomcat 5.0.28. Java and JZOS seem to be properly installed; "java -version" gives me what I expect to see, and the RUN14 job gives me "Hello, world!" the way it should. Tomcat, however, is being as stubborn as, well, a tomcat.
Having added three jar files in TOMCAT_HOME/server/lib/ -- tomcat-util.jar, commons-digester.jar, and commons-beanutils.jar -- to get past various NoClassDefFoundErrors, I now get the following in STDOUT:
Can't load server.xml
Can't load server.xml
STDERR shows:
Jul 19, 2006 1:33:31 AM org.apache.catalina.startup.Catalina start
INFO: Server startup in 0 ms
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60)
at java.lang.reflect.Method.invoke(Method.java:391)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:287)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:425)
Caused by: java.lang.NullPointerException
at org.apache.catalina.startup.Catalina.await(Catalina.java:619)
at org.apache.catalina.startup.Catalina.start(Catalina.java:579)
... 7 more
Here is the SYSOUT:
JZOSVM14(N): log level has been set to: I
JZOSVM14(N): Copyright (C) IBM Corp. 2005. All rights reserved.
JZOSVM14(N): Version 1.2.4
JZOSVM14(I): Region requested = 0K, Actual below/above limit = 9M / 1667M
JZOSVM14(I): JAVA_PROPAGATE=NO
JZOSVM14(I): PATH=/bin:/opt/java/J1.4/bin:
JZOSVM14(I): IBM_JAVA_ZOS_TDUMP=NO
JZOSVM14(I): JZOS_HOME=/opt/java/jzos
JZOSVM14(I): IBM_JAVA_OPTIONS=-Xms64m -Xmx128m -Dfile.encoding=ISO8859-1 -Djzos.home=/opt/java/jzos -Dcatalina.base=/opt
/java/tomcat -Dcatalina.home=/opt/java/tomcat -Djava.io.tmpdir=/opt/java/tomcat/temp -Djava.endorsed.dirs=/opt/java/tomc
at/common/endor
sed
JZOSVM14(I): _=/bin/env
JZOSVM14(I): CLASSPATH=/opt/java/J1.4/lib/tools.jar:/opt/java/tomcat/bin/bootstrap.jar:/opt/java/tomcat/server/lib/tomca
t-util.jar:/opt/java/tomcat/server/lib/commons-digester.jar:/opt/java/tomcat/server/lib/commons-beanutils.jar:/opt/java/
jzos/jzos.jar:
JZOSVM14(I): LIBPATH=/lib:/usr/lib:/opt/java/J1.4/bin:/opt/java/J1.4/bin/classic:/opt/java/jzos:
JZOSVM14(I): JAVA_DUMP_HEAP=false
JZOSVM14(I): JAVA_HOME=/opt/java/J1.4
JZOSVM14(N): Java Virtual Machine created. Version information follows:
java version "1.4.2"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2)
Classic VM (build 1.4.2, J2RE 1.4.2 IBM z/OS Persistent Reusable VM build cm142-20060421 (SR5) (JIT enabled: jitc))
JZOSVM14(I): Using output encoding: 'IBM-1047'
JZOSVM14(I): MVS commands are ENABLED
JZOSVM14(I): Java main class: org.apache.catalina.startup.Bootstrap
JZOSVM14(I): Arg 1='start'
JZOSVM14(N): Invoking org.apache.catalina.startup.Bootstrap.main()
JZOSVM14(N): org.apache.catalina.startup.Bootstrap.main() completed.
JZOSVM14(I): Waiting for non-deamon Java threads to finish before exiting...
When I go into OMVS and do a "cat /opt/java/tomcat/conf/server.xml" (which is the only place I can find server.xml), it shows me garbage. If I perform a binary download of server.xml to my PC it appears to be legible ASCII XML. Is this correct, or should it be readable inside OMVS? I have been searching on the NPE in Catalina, but so far with no joy. Any suggestions?
Thanks,
Jon
NullPointerException in Tomcat startup in TC14
- You should not have to add jars if you are running Tomcat 5.0.28 on JDK 1.4. This indicates that you have some other problem and probably have not unjarred the Tomcat distribution correctly. I would suggest that you start over with a fresh Tomcat install and follow the instruction at http://dovetail.com/docs/tomcat.html.
- If you still have problems, please post the JZOS log using "LOGLVL=+D".
- If you still have problems, please post the JZOS log using "LOGLVL=+D".
OK, I have redone the install, and I am still having problems. Here is what I did:
Downloaded binary distribution of Tomcat core jakarta-tomcat-5.0.28.zip from tomcat.apache.org. Verified MD5.
Binary FTP of jakarta-tomcat-5.0.28.zip to Unix System Services directory /opt/java
jar -xvf jakarta-tomcat-5.0.28.zip -- this looked like it ran fine, but I didn't redirect the output to a file. At any rate, I didn't see any error messages, and all of the file names that I saw looked OK.
ln -s jakarta-tomcat-5.0.28 tomcat
Couldn't download JCL mentioned in step 6 on dovetail.com/docs/tomcat.html -- got error 404. I assume this looks something like JZOS.SAMPJCL(TC14), so that is what I am trying to use. this is the result:
SYSOUT:
STDERR:
This is what happened on my first try. (That's why I added the .jar files to the CLASSPATH the first time through.)
Thanks,
Jon
Downloaded binary distribution of Tomcat core jakarta-tomcat-5.0.28.zip from tomcat.apache.org. Verified MD5.
Binary FTP of jakarta-tomcat-5.0.28.zip to Unix System Services directory /opt/java
jar -xvf jakarta-tomcat-5.0.28.zip -- this looked like it ran fine, but I didn't redirect the output to a file. At any rate, I didn't see any error messages, and all of the file names that I saw looked OK.
ln -s jakarta-tomcat-5.0.28 tomcat
Couldn't download JCL mentioned in step 6 on dovetail.com/docs/tomcat.html -- got error 404. I assume this looks something like JZOS.SAMPJCL(TC14), so that is what I am trying to use. this is the result:
SYSOUT:
Code: Select all
07:49:13 JZOSVM14(N): log level has been set to: D
07:49:14 JZOSVM14(N): Copyright (C) IBM Corp. 2005. All rights reserved.
07:49:14 JZOSVM14(N): Version 1.2.4
07:49:14 JZOSVM14(I): Region requested = 0K, Actual below/above limit = 9M / 1667M
07:49:16 JZOSVM14(D): Output from DD:STDENV config shell script:
07:49:19 JZOSVM14(D): ___JZOS_ENV_START___
07:49:22 JZOSVM14(I): JAVA_PROPAGATE=NO
07:49:22 JZOSVM14(I): PATH=/bin:/opt/java/J1.4/bin:
07:49:22 JZOSVM14(I): IBM_JAVA_ZOS_TDUMP=NO
07:49:22 JZOSVM14(I): JZOS_HOME=/opt/java/jzos
07:49:22 JZOSVM14(I): IBM_JAVA_OPTIONS=-Xms64m -Xmx128m -Dfile.encoding=ISO8859-1 -Djzos.home=/opt/java/jzos
-Dcatalina.base=/opt/java/tomcat -Dcatalina.home=/opt/java/tomcat -Djava.io.tmpdir=/opt/java/tomcat/temp
-Djava.endorsed.dirs=/opt/java/tomcat/com
mon/endorsed
07:49:22 JZOSVM14(I): _=/bin/env
07:49:22 JZOSVM14(I): CLASSPATH=/opt/java/J1.4/lib/tools.jar:/opt/java/tomcat/bin/bootstrap.jar:/opt/java/jzos/jzos.jar:
07:49:22 JZOSVM14(I): LIBPATH=/lib:/usr/lib:/opt/java/J1.4/bin:/opt/java/J1.4/bin/classic:/opt/java/jzos:
07:49:22 JZOSVM14(I): JAVA_DUMP_HEAP=false
07:49:22 JZOSVM14(I): JAVA_HOME=/opt/java/J1.4
07:49:22 JZOSVM14(D): ___JZOS_ENV_STOP___
07:49:23 JZOSVM14(D): argBuf=''
07:49:29 JZOSVM14(N): Java Virtual Machine created. Version information follows:
07:49:34 JZOSVM14(D): About to invoke com.dovetail.jzos.ZUtil.getJavaVersionInfo()
java version "1.4.2"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2)
Classic VM (build 1.4.2, J2RE 1.4.2 IBM z/OS Persistent Reusable VM build cm142-20060421 (SR5) (JIT enabled: jitc))
07:49:34 JZOSVM14(D): About to invoke com.dovetail.jzos.ZUtil.redirectStandardStreams()
07:49:35 JZOSVM14(I): Using output encoding: 'IBM-1047'
07:49:35 JZOSVM14(I): MVS commands are ENABLED
07:49:35 JZOSVM14(D): About to invoke com.dovetail.jzos.ZUtil.establishMvsCommandWaiter()
07:49:35 JZOSVM14(I): Java main class: org.apache.catalina.startup.Bootstrap
07:49:35 JZOSVM14(I): Arg 1='start'
07:49:35 JZOSVM14(N): Invoking org.apache.catalina.startup.Bootstrap.main()
07:49:35 JZOSVM14(D): About to invoke org.apache.catalina.startup.Bootstrap.main()
07:50:12 JZOSVM14(N): org.apache.catalina.startup.Bootstrap.main() completed.
07:50:12 JZOSVM14(I): Waiting for non-deamon Java threads to finish before exiting...
Code: Select all
java.lang.NoClassDefFoundError: org/apache/tomcat/util/log/SystemLogHandler
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:1747)
at java.lang.Class.getConstructor1(Class.java:2063)
at java.lang.Class.newInstance3(Class.java:331)
at java.lang.Class.newInstance(Class.java:305)
at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:208)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:402)
Thanks,
Jon
Jon,
We are trying to track down the cause of this problem - we're seeing it in possibly several forms. Could you please set up Tomcat debug logging as described below and send your log output to info@dovetail.com. Also, please perform a directory listing with permissions:
cd $CATALINA_BASE
ls -R -l > permlist.txt
And send that to us as well.
Thanks.
Tomcat debug logging setup:
============================================
1.) Create an ASCII file /<yourhome>/logging.properties and add the following lines:
handlers= java.util.logging.ConsoleHandler
org.apache.catalina.level=FINE
java.util .logging.ConsoleHandler.level = FINE
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
Reminder: this file MUST be in an ASCII codepage (ISO-8859-1 is fine).
2.) Add the following line to your Tomcat JCL:
IJO="$IJO -Djava.util.logging.config.file=/<yourhome>/logging.properties"
Re submit the JCL. The debug output will show in STDERR DD. Either post here, or send to info@dovetail.com so we can take a look.
We are trying to track down the cause of this problem - we're seeing it in possibly several forms. Could you please set up Tomcat debug logging as described below and send your log output to info@dovetail.com. Also, please perform a directory listing with permissions:
cd $CATALINA_BASE
ls -R -l > permlist.txt
And send that to us as well.
Thanks.
Tomcat debug logging setup:
============================================
1.) Create an ASCII file /<yourhome>/logging.properties and add the following lines:
handlers= java.util.logging.ConsoleHandler
org.apache.catalina.level=FINE
java.util .logging.ConsoleHandler.level = FINE
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
Reminder: this file MUST be in an ASCII codepage (ISO-8859-1 is fine).
2.) Add the following line to your Tomcat JCL:
IJO="$IJO -Djava.util.logging.config.file=/<yourhome>/logging.properties"
Re submit the JCL. The debug output will show in STDERR DD. Either post here, or send to info@dovetail.com so we can take a look.
Just for the sake of anyone else who may experience this problem, after conferring with Kirk Wolf, he pointed me to the source of the problem: the MAXFILEPROC parameter in my BPXPRM member was too small. I changed it from 64 to 256 (and also changed MAXPROCUSER from 250 to 1024 while I was at it), and now Tomcat comes up cleanly.
Thanks,
Jon
Thanks,
Jon