keep pg73jdbc3.jar in %CATALINA_HOME%/webapps/Timerecording/WEB-INF/lib
-----Original Message-----
From: Matthias Vach [mailto:matthias.vach@web.de]
Sent: 03 March 2004 15:27
To: pgsql-jdbc@postgresql.org
Subject: [JDBC] Same old story :( "Cannot load JDBC driver class 'null'"
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></p
arameter>
<parameter><name>url</name><value>jdbc:HypersonicSQL:database</value></param
eter>
</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
---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faqs/FAQ.html
________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________
________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________