Skip site navigation (1) Skip section navigation (2)

Same old story :( "Cannot load JDBC driver class 'null'"

From: "Matthias Vach" <matthias(dot)vach(at)web(dot)de>
To: pgsql-jdbc(at)postgresql(dot)org
Subject: Same old story :( "Cannot load JDBC driver class 'null'"
Date: 2004-03-03 15:26:54
Message-ID: 200403031526.i23FQsQ00668@mailgate5.cinetic.de (view raw or flat)
Thread:
Lists: pgsql-jdbc
Hi all, 
first of all, sorry for this long mail, but i´m working on this problem since 4 days. And i really 
need help. 
I read a lot of websites about this problem but i still can't fix my problem so i hope you could 
help me. 
 
Thank you very much. 
 
Every time i try to connect the postgresql-Database with my little JSP (running in Tomcat) i got 
this Error: 
--> java.sql.SQLException: Cannot load JDBC driver class 'null' <-- 
 
my environment 
----------------------------------------------- 
PostgreDB and Tomcat are running on the same Server. 
- the DB is named "mze" 
- the user for this DB is named also "mze" 
- the user has no password for the DB so it's "" 
 
my Tomcat version 4.1.18 
my Tomcat is listening on Port 4444 
 
my Tomcat-Directory is: /opt/jakarta/tomcat 
the Environment varibabl is: CATALINA_HOME=/opt/jakarta/tomcat 
 
the Name of my Webapplication is: 
%CATALINA_HOME%/webapps/Timerecording 
 
my jsp is lying in: 
%CATALINA_HOME%/webapps/Timerecording/WEB-INF/jsp 
 
my javaclass is lying in: 
%CATALINA_HOME%/webapps/Timerecording/WEB-INF/src 
 
the JDBC-Driver "pg73jdbc3.jar is lying in: 
%CATALINA_HOME%/common/lib 
----------------------------------------------- 
 
 
web.xml of my webapp: 
 ----------------------------------------------- 
 <?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 
"http://java.sun.com/dtd/web-app_2_3.dtd"> 
 
<web-app> 
	<servlet>....</servlet> 
	<servlet-mapping>....</servlet-mapping> 
 
	<resource-ref> 
		<description>postgreSQL Connection</description> 
		<res-ref-name>jdbc/mze</res-ref-name> 
		<res-type>javax.sql.DataSource</res-type> 
		<res-auth>Container</res-auth> 
	</resource-ref> 
</web-app> 
----------------------------------------------- 
 
 
javaclass of my webapp 
----------------------------------------------- 
public class Order { 
	String connectionState = "Not Connected"; 
 
	public void init() throws Exception { 
		DataSource ds=null; 
		Connection conn=null; 
 
		Context ctx = new InitialContext(); 
		ds = (DataSource) ctx.lookup("java:comp/env/jdbc/mze"); 
 
		try{ 
			conn = ds.getConnection();		//<----------------EXCEPTION HERE 
		} 
		catch(Exception e){ throw new Exception("Boom - No Connection -->"+e);	} 
 
		try { 
			if (conn != null) { 
				... 
				conn.close(); 
			} 
 
		} 
		catch (Exception e) {throw new Exception(" conn == null -->" + e);	} 
	} 
----------------------------------------------- 
 
 
server.xml of my tomcat 
(sorry i don´t know what is important to fix my problem.So it´s very long! Sorry! 
 the most important is at the tail of this file): 
----------------------------------------------- 
<Server port="8005" shutdown="SHUTDOWN" debug="0"> 
 
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" debug="0"/> 
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" 
debug="0"/> 
 
<GlobalNamingResources> 
	<Environment name="simpleValue" type="java.lang.Integer" value="30"/> 
	<Resource name="UserDatabase" auth="Container" 
type="org.apache.catalina.UserDatabase" 
			description="User database that can be updated and saved"></Resource> 
		<ResourceParams name="UserDatabase"> 
		<parameter> 
			<name>factory</name> 
			<value>org.apache.catalina.users.MemoryUserDatabaseFactory</value> 
		</parameter> 
		<parameter> 
			<name>pathname</name> 
			<value>conf/tomcat-users.xml</value> 
		</parameter> 
		</ResourceParams> 
</GlobalNamingResources> 
 
<Service name="Tomcat-Standalone"> 
 
<!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8080 --> 
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" 
	port="4444" minProcessors="5" maxProcessors="75" 
	enableLookups="true" redirectPort="8443" 
	acceptCount="100" debug="0" connectionTimeout="20000" 
	useURIValidationHack="false" disableUploadTimeout="true" /> 
 
<!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 --> 
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" 
	port="8009" minProcessors="5" maxProcessors="75" 
	enableLookups="true" redirectPort="8443" 
	acceptCount="10" debug="0" connectionTimeout="0" 
	useURIValidationHack="false" 
	protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"/> 
 
<!-- Define the top level container in our container hierarchy --> 
<Engine name="Standalone" defaultHost="localhost" debug="0"> 
 
<!-- Global logger unless overridden at lower levels --> 
<Logger className="org.apache.catalina.logger.FileLogger" 
	prefix="catalina_log." suffix=".txt" 
	timestamp="true"/> 
 
<!-- Because this Realm is here, an instance will be shared globally --> 
<Realm className="org.apache.catalina.realm.UserDatabaseRealm" 
	debug="0" resourceName="UserDatabase"/> 
 
<!-- Define the default virtual host --> 
<Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" 
autoDeploy="true"> 
 
<Logger className="org.apache.catalina.logger.FileLogger" 
	directory="logs"  prefix="localhost_log." suffix=".txt" timestamp="true"/> 
 
<!-- Tomcat Examples Context --> 
<Context path="/examples" docBase="examples" debug="0" reloadable="true" 
crossContext="true"> 
<Logger className="org.apache.catalina.logger.FileLogger" 
		prefix="localhost_examples_log." suffix=".txt" timestamp="true"/> 
	<Ejb   name="ejb/EmplRecord" type="Entity" 
		home="com.wombat.empl.EmployeeRecordHome" 
		remote="com.wombat.empl.EmployeeRecord"/> 
 
	<Environment name="maxExemptions" type="java.lang.Integer" value="15"/> 
	<Parameter name="context.param.name" value="context.param.value" 
override="false"/> 
 
	<Resource name="jdbc/EmployeeAppDb" auth="SERVLET" 
type="javax.sql.DataSource"/> 
		<ResourceParams name="jdbc/EmployeeAppDb"> 
			<parameter><name>username</name><value>sa</value></parameter> 
			<parameter><name>password</name><value></value></parameter> 
			
<parameter><name>driverClassName</name><value>org.hsql.jdbcDriver</value></parameter> 
			
<parameter><name>url</name><value>jdbc:HypersonicSQL:database</value></parameter> 
		</ResourceParams> 
 
	<Resource name="mail/Session" auth="Container" type="javax.mail.Session"/> 
		<ResourceParams name="mail/Session"> 
			
<parameter><name>mail.smtp.host</name><value>localhost</value></parameter> 
		</ResourceParams> 
 
	<ResourceLink name="linkToGlobalResource" 
		global="simpleValue" 
		type="java.lang.Integer"/> 
 
</Context> 
 
<Context path="/webapps/Timerecording" docBase="Timerecording" debug="0" 
                reloadable="true" crossContext="true"> 
 
	<!--  PostgreSQL anbindung --> 
	<Resource name="jdbc/mze" auth="Container" type="javax.sql.DataSource"/> 
	<ResourceParams name="jdbc/mze"> 
		<parameter> 
			<name>factory</name> 
			<value>org.apache.commons.dbcp.BasicDataSourceFactory</value> 
		</parameter> 
		<parameter> 
			<name>url</name> 
			<value>jdbc:postgresql://127.0.0.1:5432/mze</value> 
		</parameter> 
		<parameter> 
			<name>driverClassName</name> 
			<value>org.postgresql.Driver</value> 
		</parameter> 
			<parameter> 
			<name>username</name> 
			<value>mze</value> 
		</parameter> 
		<parameter> 
			<name>password</name> 
			<value>mze</value> 
		</parameter> 
		<parameter> 
			<name>maxActive</name> 
			<value>20</value> 
		</parameter> 
		<parameter> 
			<name>maxIdle</name> 
			<value>10</value> 
		</parameter> 
		<parameter> 
			<name>maxWait</name> 
			<value>3000</value> 
		</parameter> 
	</ResourceParams> 
</Context> 
 
</Host> 
</Engine> 
</Service> 
</Server> 
----------------------------------------------- 
 
Thank you for all help 
Matthias 
 
 
 
 
 
 
 
 
 
_______________________________________________________________________
Ein Grund zum Feiern: Die PC Praxis ermittelt zwischen 10 grossen
Mailprovidern WEB.DE FreeMail als Testsieger http://f.web.de/?mc=021190


Responses

pgsql-jdbc by date

Next:From: Bhushan BhangaleDate: 2004-03-03 15:36:19
Subject: Re: Same old story :( "Cannot load JDBC driver class 'null
Previous:From: Bhushan BhangaleDate: 2004-03-03 15:15:21
Subject: Re: calling function

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group