You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by "Jakarta Tomcat Newsgroup (@Basebeans.com)" <ja...@basebeans.com> on 2002/06/23 06:25:01 UTC

Tomcat 4.0.4 MyApp as default context - ClassNotFoundException: org.hsql.jdbcDriver

Subject: Tomcat 4.0.4 MyApp as default context - ClassNotFoundException: org.hsql.jdbcDriver
From: "Matt Raible" <ma...@raibledesigns.com>
 ===
I have an entry for my web-application in server.xml so I can use a
JDBCRealm and a JNDI Datasource.  When I change my context's path from

<Context path="/myAppName" docBase="myAppName" ... />

to:

<Context path="" docBase="myAppName" .../>

I get the following exception?!  And I never even refer to this JDBC Driver.
I did some browsing on the mailing lists, and this appears to be a
well-known error, but I couldn't find the solution.

TyrexDataSourceFactory:  Cannot create DataSource, Exception
java.lang.ClassNotFoundException: org.hsql.jdbcDriver
        at
org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader
.java:1127)
        at
org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader
.java:992)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:310)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:115)
        at
org.apache.naming.factory.TyrexDataSourceFactory.getObjectInstance(TyrexData
SourceFactor
.java:210)


Thanks,

Matt



--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: Tomcat 4.0.4 MyApp as default context - ClassNotFoundException: org.hsql.jdbcDriver

Posted by Martin Jacobson <ma...@libero.it>.
Jakarta Tomcat Newsgroup (@Basebeans.com) wrote:

> Subject: Tomcat 4.0.4 MyApp as default context - ClassNotFoundException: org.hsql.jdbcDriver
> From: "Matt Raible" <ma...@raibledesigns.com>
>  ===
> I have an entry for my web-application in server.xml so I can use a
> JDBCRealm and a JNDI Datasource.  When I change my context's path from
> 
> <Context path="/myAppName" docBase="myAppName" ... />
> 
> to:
> 
> <Context path="" docBase="myAppName" .../>
> 
> I get the following exception?!  And I never even refer to this JDBC Driver.
> I did some browsing on the mailing lists, and this appears to be a
> well-known error, but I couldn't find the solution.
> 
> TyrexDataSourceFactory:  Cannot create DataSource, Exception
> java.lang.ClassNotFoundException: org.hsql.jdbcDriver
>         at
> org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader
> .java:1127)
>         at
> org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader
> .java:992)
>         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:310)
>         at java.lang.Class.forName0(Native Method)
>         at java.lang.Class.forName(Class.java:115)
>         at
> org.apache.naming.factory.TyrexDataSourceFactory.getObjectInstance(TyrexData
> SourceFactor
> .java:210)
> 
> 
> Thanks,


I had this problem, and couldn't solve it using Tomcat 4.0 at all :-( It 
seems that Tyrex is broken (or, at least, cannot be successfully 
configured). Reading elsewhere, it seems that Tyrex doesn't provide any 
connection pooling, either, so it's a bit of a Waste of Space (IMHO).

I 'solved' the problem by moving to Tomcat 4.1, which uses the 
Jakarta-commons dbcp. This works!

This is the relevant part of my <server.xml> file:

<Resource name="jdbc/RadiationDB"
		  auth="Container"
		  type="javax.sql.DataSource"
/>
<ResourceParams name="jdbc/RadiationDB">
	<parameter>
		<name>factory</name>
		<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
	</parameter>
	<parameter>
		<name>maxActive</name>
		<value>100</value>
	</parameter>
	<parameter>
		<name>maxIdle</name>
		<value>30000</value>
	</parameter>
	<parameter>
		<name>maxWait</name>
		<value>100</value>
	</parameter>
	<parameter>
		<name>username</name>
		<value>me</value>
	</parameter>
	<parameter>
		<name>password</name>
		<value>mypassword</value>
	</parameter>
	<parameter>
		<name>driverClassName</name>
		<value>org.gjt.mm.mysql.Driver</value>
	</parameter>
	<parameter>
		<name>url</name>
		<value>jdbc:mysql://localhost/radiation</value>
	</parameter>
</ResourceParams>

NOTE that the user is identified by "username", and not "user" - this 
had me stuck for a while!

Hope this helps,
Martin




--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>