tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daren R. Sefcik" <da...@partnersdata.com>
Subject Re: Cannot load JDBC driver class 'null'
Date Mon, 13 Jan 2003 16:38:38 GMT
I am using Apache 1.3.19 and here are the lines I added to the
httpd.conf file:

<IfModule !mod_jk.c>
  LoadModule jk_module         libexec/mod_jk.so
</IfModule>

AddModule mod_jk.c

#Tomcat jk connector
<IfModule mod_jk.c>
   JkWorkersFile "/usr/local/tomcat/conf/jk/workers.properties"
   JkLogFile "/usr/local/tomcat/logs/mod_jk.log"
   JkLogLevel debug
   JkMount /intranet ajp13
   JkMount /intranet/* ajp13
</IfModule>

My jk connector was compiled from source:

jakarta-tomcat-connectors-jk-1.2.0-src.tar

I will post my other config files if they are wanted.
Note that I was not able to get it working all
week with a warp connector and was about to give up when I
thought I might as well setup a mod_jk connector since I've been
meaning to to do that anyway and as soon as I did it worked.
I did not change any of my jdbc/jndi settings at all, just
setup the mod_jk instead of warp.

Daren


On Sat, 11 Jan 2003, Paul Carpenter wrote:

> Daren
> 
> That's interesting, I'm using the mod_jk connectot and warp, but still  
> have the null problem.
> 
> What does your Apache config look like?
> 
> Paul
> 
> 
> On Saturday, January 11, 2003, at 08:52  AM, Daren R. Sefcik wrote:
> 
> > Humm...well what do you know..I now have it working!
> >
> > I was using a WARP Connector using mod_webapp.
> > I just configured a mod_jk connector instead
> > and now it works..maybe this is a WARP bug issue??
> >
> > http://issues.apache.org/bugzilla/show_bug.cgi?id=6048
> >
> > I am curious to know if anybody else having this
> > problem can confirm they are using WARP or JK as
> > the connector.
> >
> > Daren
> >
> >
> > On Fri, 10 Jan 2003, Daren R. Sefcik wrote:
> >
> >> Yes I have..I have been trying for the last week
> >> to figure it out. I have found the same thing that
> >> BasicDataSource does not load the driverClassName.
> >> I have put my jdbcdriver.jar file in the common/lib
> >> dir..and I know it's in the classpath of tomcat as I
> >> can write a jsp page with a Class.forName and have
> >> it work fine.The problem only surfaces when doing
> >> jndi Datasource lookups. The driverClassName from
> >> the server.xml file is never passed to BasicDataSource.
> >>
> >> If anyone can spot errors in my configuration please
> >> let me know, thanks..
> >>
> >>
> >> I know that the server.mxl is being read from my logs:
> >>
> >> 2003-01-10 11:22:29  
> >> NamingContextListener[/Apache/localhost/intranet]: Creating JNDI  
> >> naming context
> >> 2003-01-10 11:22:29  
> >> NamingContextListener[/Apache/localhost/intranet]:   Resource  
> >> parameters for jdbc/TestDB = ResourceParams[name=jdbc/TestDB,  
> >> parameters={factory=org.apache.commons.dbcp.BasicDataSourceFactory,  
> >> password=user, url=jdbc:jtds:sqlserver://ns1:1433/WebDB,  
> >> driverClassName=net.sourceforge.jtds.jdbcx.TdsDataSource,  
> >> username=webuser}]
> >> 2003-01-10 11:22:29  
> >> NamingContextListener[/Apache/localhost/intranet]:   Adding resource  
> >> ref jdbc/TestDB
> >> 2003-01-10 11:22:29  
> >> NamingContextListener[/Apache/localhost/intranet]:    
> >> ResourceRef[className=javax.sql.DataSource,factoryClassLocation=null,f 
> >> actoryClassName=org.apache.naming.factory.ResourceFactory,{type=scope, 
> >> content=Shareable},{type=auth,content=Container},{type=factory,content 
> >> =org.apache.commons.dbcp.BasicDataSourceFactory},{type=password,conten 
> >> t=user},{type=url,content=jdbc:jtds:sqlserver://ns1:1433/ 
> >> WebDB},{type=driverClassName,content=net.sourceforge.jtds.jdbcx.TdsDat 
> >> aSource},{type=username,content=webuser}]
> >>
> >> Here is the error from catalina.out:
> >>
> >> new context
> >> ctx lookup
> >> gonna try a ds.getConnection
> >> java.sql.SQLException: Cannot load JDBC driver class 'null'
> >>         at  
> >> org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSour 
> >> ce.java:529)
> >>         at  
> >> org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource. 
> >> java:312)
> >>         at foo.DBTest.init(DBTest.java:34)
> >>         at org.apache.jsp.test_jsp._jspService(test_jsp.java:49)
> >>
> >>
> >> Here is my server.xml:
> >>
> >> <Server port="8005" shutdown="SHUTDOWN" debug="0">
> >>
> >>   <GlobalNamingResources>
> >>     <Environment name="simpleValue" type="java.lang.Integer"  
> >> value="30"/>
> >>   </GlobalNamingResources>
> >>
> >>   <Service name="Tomcat-Apache">
> >>
> >>     <Connector  
> >> className="org.apache.catalina.connector.warp.WarpConnector"
> >>      port="8008" minProcessors="5" maxProcessors="75"
> >>      enableLookups="true" appBase="webapps"
> >>      acceptCount="10" debug="5"/>
> >>
> >>     <!-- Replace "localhost" with what your Apache "ServerName" is  
> >> set to -->
> >>     <Engine className="org.apache.catalina.connector.warp.WarpEngine"
> >>      name="Apache" debug="5">
> >>
> >>       <Host name="localhost" debug="5" appBase="webapps"
> >>        unpackWARs="true" autoDeploy="true">
> >>
> >>         <Context path="/intranet" docBase="intranet"
> >>            debug="5" reloadable="true" crossContext="true">
> >>
> >>           <Resource name="jdbc/TestDB" auth="Container"  
> >> type="javax.sql.DataSource"/>
> >>           <ResourceParams name="jdbc/TestDB">
> >>             <parameter>
> >>               <name>factory</name>
> >>                
> >> <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
> >>             </parameter>
> >>             <parameter>
> >>               <name>driverClassName</name>
> >>               <value>net.sourceforge.jtds.jdbcx.TdsDataSource</value>
> >>             </parameter>
> >>             <parameter>
> >>               <name>url</name>
> >>               <value>jdbc:jtds:sqlserver://ns1:1433/WebDB</value>
> >>             </parameter>
> >>             <parameter>
> >>              <name>username</name>
> >>              <value>webuser</value>
> >>             </parameter>
> >>             <parameter>
> >>              <name>password</name>
> >>              <value>user</value>
> >>             </parameter>
> >>           </ResourceParams>
> >>
> >>           <Logger className="org.apache.catalina.logger.FileLogger"
> >>                   prefix="intranet_log." suffix=".txt"
> >>                   timestamp="true"/>
> >>
> >>         </Context>
> >>
> >>       </Host>
> >>     </Engine>
> >>   </Service>
> >>
> >> </Server>
> >>
> >> And here is the webapps/intranet/WEB-INF/web.xml:
> >>
> >> <?xml version="1.0"?>
> >>
> >> <!DOCTYPE web-app
> >>     PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
> >>     "http://java.sun.com/j2ee/dtds/web-app_2.2.dtd">
> >>
> >> <web-app>
> >>   <resource-ref>
> >>       <description>DB Connection</description>
> >>       <res-ref-name>jdbc/TestDB</res-ref-name>
> >>       <res-type>javax.sql.DataSource</res-type>
> >>       <res-auth>Container</res-auth>
> >>   </resource-ref>
> >> </web-app>
> >>
> >>
> >>
> >>
> >>
> >>> Has anyone else experienced this????
> >>> I have read a couple of posts that I found off google,
> >>> and basically what they are saying is non of the information in
> >>> the server.xml file is being passed to the Datasource or something of
> >>> that nature.
> >>
> >>> The suggested fix was to hardcode everything but that kind of defeats
> >>> the purpose.
> >>>
> >>>> I have experience that before, but that was my fault rather than  
> >>>> tomcat.
> >>>> I put the source jar instead of the driver binary. Other than that 
 
> >>>> DBCP
> >>>>  worked as described in the tomcat documents. Cannot load JDBC  
> >>>> driver
> >>>> class null usually means that it couldn't find the jdbc driver that
 
> >>>> you
> >>>> specified in the server.xml .
> >>>
> >>> that is strange cause I have it in
> >>> $CATALINA_HOME/common/lib
> >>>
> >>> And it is exactly the same class that I used when I was using JDBC
> >>> non-jndi.
> >>
> >>
> >> --
> >> To unsubscribe, e-mail:    
> >> <mailto:tomcat-user-unsubscribe@jakarta.apache.org>
> >> For additional commands, e-mail:  
> >> <mailto:tomcat-user-help@jakarta.apache.org>
> >>
> >
> > -- 
> > ===============================
> > Daren Sefcik
> > Senior Engineer
> > Partners Data Systems Inc.
> > 3663 Via Mercado
> > La Mesa CA 91941-8316
> > 619-415-2000 ext.317
> > http://www.partnersdata.com
> > ===============================
> >
> >
> > --
> > To unsubscribe, e-mail:    
> > <mailto:tomcat-user-unsubscribe@jakarta.apache.org>
> > For additional commands, e-mail:  
> > <mailto:tomcat-user-help@jakarta.apache.org>
> >
> 
> 
> --
> To unsubscribe, e-mail:   <mailto:tomcat-user-unsubscribe@jakarta.apache.org>
> For additional commands, e-mail: <mailto:tomcat-user-help@jakarta.apache.org>
> 

-- 
===============================
Daren Sefcik
Senior Engineer
Partners Data Systems Inc.
3663 Via Mercado
La Mesa CA 91941-8316
619-415-2000 ext.317
http://www.partnersdata.com
===============================


--
To unsubscribe, e-mail:   <mailto:tomcat-user-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:tomcat-user-help@jakarta.apache.org>


Mime
View raw message