You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Licinio Gomez Delgado <lg...@profit.es> on 2005/04/13 09:48:31 UTC

org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'

Hi, I´m a newbie with problems configurating Tomcat,

I´ve been reading examples and the mailing list, but I can´t configure
correctly Tomcat 5.0.28 with Oracle 9, I´m a bit desperate

it´s what I got:


in my Tomcat 5.0\common\lib folder I´ve got ojdbc14.jar


-----------------------------------------------------------------------
Tomcat 5.0\conf\server.xml:
-----------------------------------------------------------------------

<?xml version='1.0' encoding='utf-8'?>
<Server>
  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
  <Listener
className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
  <GlobalNamingResources>
    <Environment name="simpleValue" type="java.lang.Integer" value="30"/>
    <Resource auth="Container" description="User database that can be
updated and saved" name="UserDatabase"
type="org.apache.catalina.UserDatabase"/>
    <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="Catalina">
    <Connector acceptCount="100" connectionTimeout="20000"
disableUploadTimeout="true" port="8080" redirectPort="8443"
maxSpareThreads="75" maxThreads="150" minSpareThreads="25">
    </Connector>
    <Connector port="8009" protocol="AJP/1.3"
protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"
redirectPort="8443">
    </Connector>
    <Engine defaultHost="localhost" name="Catalina">
      <Host appBase="webapps" name="localhost">
        <Logger className="org.apache.catalina.logger.FileLogger"
prefix="localhost_log." suffix=".txt" timestamp="true"/>


				<Resource name="jdbc/myoracle" auth="Container"
				              type="javax.sql.DataSource"/>

				<ResourceParams name="jdbc/myoracle">
				  <parameter>
				    <name>factory</name>
				    <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
				  </parameter>
				  <parameter>
				    <name>driverClassName</name>
				    <value>oracle.jdbc.driver.OracleDriver</value>
				  </parameter>
				  <parameter>
				    <name>url</name>
				    <value>jdbc:oracle:thin:@10.0.100.6:1521:bddesa</value>
				  </parameter>
				  <parameter>
				    <name>username</name>
				    <value>*****</value>
				  </parameter>
				  <parameter>
				    <name>password</name>
				    <value>*****</value>
				  </parameter>
				  <parameter>
				    <name>maxActive</name>
				    <value>20</value>
				  </parameter>
				  <parameter>
				    <name>maxIdle</name>
				    <value>10</value>
				  </parameter>
				  <parameter>
				    <name>maxWait</name>
				    <value>-1</value>
				  </parameter>
				</ResourceParams>



      </Host>
      <Logger className="org.apache.catalina.logger.FileLogger"
prefix="catalina_log." suffix=".txt" timestamp="true"/>
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
    </Engine>
  </Service>
</Server>









-----------------------------------------------------------------------
Tomcat 5.0\webapps\ROOT\WEB-INF\web.xml
-----------------------------------------------------------------------

<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
  Copyright 2004 The Apache Software Foundation

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">

  <display-name>Welcome to Tomcat</display-name>
  <description>
     Welcome to Tomcat
  </description>


<!-- JSPC servlet mappings start -->

    <servlet>
        <servlet-name>org.apache.jsp.index_jsp</servlet-name>
        <servlet-class>org.apache.jsp.index_jsp</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>org.apache.jsp.index_jsp</servlet-name>
        <url-pattern>/index.jsp</url-pattern>
    </servlet-mapping>

<!-- JSPC servlet mappings end -->




	<resource-ref>
	 <description>Oracle Datasource example</description>
	 <res-ref-name>jdbc/myoracle</res-ref-name>
	 <res-type>javax.sql.DataSource</res-type>
	 <res-auth>Container</res-auth>
	</resource-ref>



</web-app>



-----------------------------------------------------------------------
and in Tomcat 5.0\webapps\ROOT\test2.jsp:
-----------------------------------------------------------------------

...

		out.print("1");
		Context initContext = new InitialContext();
		out.print("2");
		Context envContext  = (Context)initContext.lookup("java:/comp/env");
		out.print("3");
		DataSource ds = (DataSource)envContext.lookup("jdbc/myoracle");
		out.print("4");
		conn = ds.getConnection();
		out.print("5");

...

the output I´ve got is:

1234org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of
class '' for connect URL 'null'





When I connect directly, it works correctly:

		DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
		conn =
DriverManager.getConnection("jdbc:oracle:thin:@10.0.100.6:1521:bddesa","****
*","****");



any help, please?

thanks very much


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


RE: org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'

Posted by Licinio Gomez Delgado <lg...@profit.es>.
Hi,

I´ve seen tomcat 5.0.28 has different *.xml files for each context in
catalina/localhost,

then I´ve modified ROOT.xml instead server.xml

here it is:



-------------------------
ROOT.xml
-------------------------
<?xml version='1.0' encoding='utf-8'?>
<Context displayName="Welcome to Tomcat" docBase="C:\Archivos de
programa\Apache Software Foundation\Tomcat 5.0\webapps\ROOT" path=""
workDir="work\Catalina\localhost\_">
<Logger className="org.apache.catalina.logger.FileLogger"
prefix="localhost_ROOT_log." suffix=".txt" timestamp="true"/>
<Resource name="jdbc/bbdesa" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/bbdesa">
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@10.0.100.6:1521:bddesa</value>
</parameter>
<parameter>
<name>validationQuery</name>
<value>select * FROM componentes_correos</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>30</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>10</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.mysql.jdbc.Driver</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>10000</value>
</parameter>
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>username</name>
<value>****</value>
</parameter>
<parameter>
<name>password</name>
<value>****</value>
</parameter>
</ResourceParams>
</Context>



--------------------------
web.xml
--------------------------
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
  Copyright 2004 The Apache Software Foundation

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">

  <display-name>Welcome to Tomcat</display-name>
  <description>
     Welcome to Tomcat
  </description>


<!-- JSPC servlet mappings start -->

    <servlet>
        <servlet-name>org.apache.jsp.index_jsp</servlet-name>
        <servlet-class>org.apache.jsp.index_jsp</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>org.apache.jsp.index_jsp</servlet-name>
        <url-pattern>/index.jsp</url-pattern>
    </servlet-mapping>

<!-- JSPC servlet mappings end -->




	<resource-ref>
	 <description>Oracle Datasource example</description>
	 <res-ref-name>jdbc/bbdesa</res-ref-name>
	 <res-type>javax.sql.DataSource</res-type>
	 <res-auth>Container</res-auth>
	</resource-ref>



</web-app>







----------------------------
test2.jsp
----------------------------
		out.print("1");
		Context initContext = new InitialContext();
		out.print("2");
		Context envContext  = (Context)initContext.lookup("java:/comp/env");
		out.print("3");
		DataSource ds = (DataSource)envContext.lookup("jdbc/bbdesa");
		out.print("4");
		conn = ds.getConnection();
		out.print("5");



Anyway, it gives me the same error:

1234org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of
class '' for connect URL 'null'

any help?

thanks.

-----Mensaje original-----
De: Licinio Gomez Delgado [mailto:lgomez@profit.es]
Enviado el: miércoles, 13 de abril de 2005 9:49
Para: tomcat-user@jakarta.apache.org
Asunto: org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC
driver of class '' for connect URL 'null'


Hi, I´m a newbie with problems configurating Tomcat,

I´ve been reading examples and the mailing list, but I can´t configure
correctly Tomcat 5.0.28 with Oracle 9, I´m a bit desperate

it´s what I got:


in my Tomcat 5.0\common\lib folder I´ve got ojdbc14.jar


-----------------------------------------------------------------------
Tomcat 5.0\conf\server.xml:
-----------------------------------------------------------------------

<?xml version='1.0' encoding='utf-8'?>
<Server>
  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
  <Listener
className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
  <GlobalNamingResources>
    <Environment name="simpleValue" type="java.lang.Integer" value="30"/>
    <Resource auth="Container" description="User database that can be
updated and saved" name="UserDatabase"
type="org.apache.catalina.UserDatabase"/>
    <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="Catalina">
    <Connector acceptCount="100" connectionTimeout="20000"
disableUploadTimeout="true" port="8080" redirectPort="8443"
maxSpareThreads="75" maxThreads="150" minSpareThreads="25">
    </Connector>
    <Connector port="8009" protocol="AJP/1.3"
protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"
redirectPort="8443">
    </Connector>
    <Engine defaultHost="localhost" name="Catalina">
      <Host appBase="webapps" name="localhost">
        <Logger className="org.apache.catalina.logger.FileLogger"
prefix="localhost_log." suffix=".txt" timestamp="true"/>


				<Resource name="jdbc/myoracle" auth="Container"
				              type="javax.sql.DataSource"/>

				<ResourceParams name="jdbc/myoracle">
				  <parameter>
				    <name>factory</name>
				    <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
				  </parameter>
				  <parameter>
				    <name>driverClassName</name>
				    <value>oracle.jdbc.driver.OracleDriver</value>
				  </parameter>
				  <parameter>
				    <name>url</name>
				    <value>jdbc:oracle:thin:@10.0.100.6:1521:bddesa</value>
				  </parameter>
				  <parameter>
				    <name>username</name>
				    <value>*****</value>
				  </parameter>
				  <parameter>
				    <name>password</name>
				    <value>*****</value>
				  </parameter>
				  <parameter>
				    <name>maxActive</name>
				    <value>20</value>
				  </parameter>
				  <parameter>
				    <name>maxIdle</name>
				    <value>10</value>
				  </parameter>
				  <parameter>
				    <name>maxWait</name>
				    <value>-1</value>
				  </parameter>
				</ResourceParams>



      </Host>
      <Logger className="org.apache.catalina.logger.FileLogger"
prefix="catalina_log." suffix=".txt" timestamp="true"/>
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
    </Engine>
  </Service>
</Server>









-----------------------------------------------------------------------
Tomcat 5.0\webapps\ROOT\WEB-INF\web.xml
-----------------------------------------------------------------------

<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
  Copyright 2004 The Apache Software Foundation

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">

  <display-name>Welcome to Tomcat</display-name>
  <description>
     Welcome to Tomcat
  </description>


<!-- JSPC servlet mappings start -->

    <servlet>
        <servlet-name>org.apache.jsp.index_jsp</servlet-name>
        <servlet-class>org.apache.jsp.index_jsp</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>org.apache.jsp.index_jsp</servlet-name>
        <url-pattern>/index.jsp</url-pattern>
    </servlet-mapping>

<!-- JSPC servlet mappings end -->




	<resource-ref>
	 <description>Oracle Datasource example</description>
	 <res-ref-name>jdbc/myoracle</res-ref-name>
	 <res-type>javax.sql.DataSource</res-type>
	 <res-auth>Container</res-auth>
	</resource-ref>



</web-app>



-----------------------------------------------------------------------
and in Tomcat 5.0\webapps\ROOT\test2.jsp:
-----------------------------------------------------------------------

...

		out.print("1");
		Context initContext = new InitialContext();
		out.print("2");
		Context envContext  = (Context)initContext.lookup("java:/comp/env");
		out.print("3");
		DataSource ds = (DataSource)envContext.lookup("jdbc/myoracle");
		out.print("4");
		conn = ds.getConnection();
		out.print("5");

...

the output I´ve got is:

1234org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of
class '' for connect URL 'null'





When I connect directly, it works correctly:

		DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
		conn =
DriverManager.getConnection("jdbc:oracle:thin:@10.0.100.6:1521:bddesa","****
*","****");



any help, please?

thanks very much


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



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