You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Cavan Morris <ca...@worldnet.att.net> on 2002/03/01 23:57:01 UTC

Help? tomcat 4.0.2 and jdk1.4 with poolman

Hey everybody,
I've been running tomcat 4.0.2 with jdk 1.3.1 and poolman 2.0.4 supported JDBC Realms for a while now with no problems.  I recently tried to switch to jdk 1.4 (Something that I think I need to do for it's Headless support on my Linux box) and it gave me the following exception on startup.

java.lang.NullPointerException
        at com.codestudio.management.PoolManConfiguration.parseXML(PoolManConfiguration.java:117)
        at com.codestudio.management.PoolManConfiguration.loadConfiguration(PoolManConfiguration.java:75)
        at com.codestudio.management.PoolManBootstrap.<init>(PoolManBootstrap.java:61)
        at com.codestudio.util.SQLManager.assertLoaded(SQLManager.java:109)
        at com.codestudio.util.SQLManager.requestConnection(SQLManager.java:190)

        at com.codestudio.sql.PoolMan.connect(PoolMan.java:184)
        at org.apache.catalina.realm.JDBCRealm.open(JDBCRealm.java:548)
        at org.apache.catalina.realm.JDBCRealm.start(JDBCRealm.java:613)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1108)

        at org.apache.catalina.core.StandardContext.start(StandardContext.java:3345)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1123)

        at org.apache.catalina.core.StandardHost.start(StandardHost.java:614)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1123)

        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:343)
        at org.apache.catalina.core.StandardService.start(StandardService.java:388)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:506)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:781)
        at org.apache.catalina.startup.Catalina.execute(Catalina.java:681)
        at org.apache.catalina.startup.Catalina.process(Catalina.java:179)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:42)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:28)
        at java.lang.reflect.Method.invoke(Method.java:327)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:243)

Line 117 of PoolManConfiguration.java is the following.
URL confURL = PoolManConfiguration.class.getClassLoader().getResource(configFile);
It's basically trying to load poolman.xml from common/classes.

It looks like it's having a major problem with the classloader.  I.e., PoolManConfiguration.class.getClassLoader() is what is null.  I've checked this with some println()'s.
The strange thing is that this is not simply due to the change from jdk1.3.1 to jdk1.4 because I can run tomcat 4.0.1 with the same configuration with no problems.  Incidentally, I have to use 4.0.2 because I need to use the <error-page> element in my application and it is broken in 4.0.1.

Does anyone have any idea what changed in both tomcat and the jdk from versions 4.0.1 and 1.3.1 to versions 4.0.2 and 1.4 that would account for this?

Does anyone know of an easy way to fix the <error-page> problem in 4.0.1?  If so I'll just use that.

If not I'll have to investigate another connection pooler for MySQL.  Any ideas on that?

Hope I hear from you guys.
Cavan Morris


Re: Help? tomcat 4.0.2 and jdk1.4 with poolman

Posted by Bill Barnhill <wb...@twcny.rr.com>.
This may already have been responded to, but FYI JDK 1.4 includes Xml
parsing.  Trying using 4.0.2 lite I think it's called.  That distrib is
designed to not include it's own XML package but use JDK 1.4's instead.

HTH,
Bill Barnhill
----- Original Message -----
From: "Cavan Morris" <ca...@worldnet.att.net>
To: <to...@jakarta.apache.org>
Sent: Friday, March 01, 2002 2:57 PM
Subject: Help? tomcat 4.0.2 and jdk1.4 with poolman


Hey everybody,
I've been running tomcat 4.0.2 with jdk 1.3.1 and poolman 2.0.4 supported
JDBC Realms for a while now with no problems.  I recently tried to switch to
jdk 1.4 (Something that I think I need to do for it's Headless support on my
Linux box) and it gave me the following exception on startup.

java.lang.NullPointerException
        at
com.codestudio.management.PoolManConfiguration.parseXML(PoolManConfiguration
.java:117)
        at
com.codestudio.management.PoolManConfiguration.loadConfiguration(PoolManConf
iguration.java:75)
        at
com.codestudio.management.PoolManBootstrap.<init>(PoolManBootstrap.java:61)
        at com.codestudio.util.SQLManager.assertLoaded(SQLManager.java:109)
        at
com.codestudio.util.SQLManager.requestConnection(SQLManager.java:190)

        at com.codestudio.sql.PoolMan.connect(PoolMan.java:184)
        at org.apache.catalina.realm.JDBCRealm.open(JDBCRealm.java:548)
        at org.apache.catalina.realm.JDBCRealm.start(JDBCRealm.java:613)
        at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1108)

        at
org.apache.catalina.core.StandardContext.start(StandardContext.java:3345)
        at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1123)

        at
org.apache.catalina.core.StandardHost.start(StandardHost.java:614)
        at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1123)

        at
org.apache.catalina.core.StandardEngine.start(StandardEngine.java:343)
        at
org.apache.catalina.core.StandardService.start(StandardService.java:388)
        at
org.apache.catalina.core.StandardServer.start(StandardServer.java:506)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:781)
        at org.apache.catalina.startup.Catalina.execute(Catalina.java:681)
        at org.apache.catalina.startup.Catalina.process(Catalina.java:179)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:42
)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
.java:28)
        at java.lang.reflect.Method.invoke(Method.java:327)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:243)

Line 117 of PoolManConfiguration.java is the following.
URL confURL =
PoolManConfiguration.class.getClassLoader().getResource(configFile);
It's basically trying to load poolman.xml from common/classes.

It looks like it's having a major problem with the classloader.  I.e.,
PoolManConfiguration.class.getClassLoader() is what is null.  I've checked
this with some println()'s.
The strange thing is that this is not simply due to the change from jdk1.3.1
to jdk1.4 because I can run tomcat 4.0.1 with the same configuration with no
problems.  Incidentally, I have to use 4.0.2 because I need to use the
<error-page> element in my application and it is broken in 4.0.1.

Does anyone have any idea what changed in both tomcat and the jdk from
versions 4.0.1 and 1.3.1 to versions 4.0.2 and 1.4 that would account for
this?

Does anyone know of an easy way to fix the <error-page> problem in 4.0.1?
If so I'll just use that.

If not I'll have to investigate another connection pooler for MySQL.  Any
ideas on that?

Hope I hear from you guys.
Cavan Morris




--
To unsubscribe:   <ma...@jakarta.apache.org>
For additional commands: <ma...@jakarta.apache.org>
Troubles with the list: <ma...@jakarta.apache.org>