tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Vikramjit Singh <vikramj...@gtllimited.com>
Subject RE: javax.naming.NamingException: Cannot create resource instance
Date Tue, 25 Jun 2002 04:42:16 GMT
hi,

I am using tomcat 4.0.3 and the same problem i am facing though i am using
Oracle driver i.e. classes12.zip. I have tried the code in the url you
specified and i am also using tomcat 4.0.3 and jdk1.4.

I get the error

javax.naming.NamingException: Cannot create resource instance
	at
org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.
java:167

here is what i have written in server.xml.


		<Resource name="jdbc/ora" auth="Container"
type="javax.sql.DataSource"/>
		<ResourceParams name="jdbc/ora">
		<parameter>
			<name>factory</name>
	
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
	      </parameter>
		<parameter>
		<name>username</name>
		<value>scott</value>
		</parameter>
		<parameter>
		<name>password</name>
		<value>tiger</value>
		</parameter>
		<parameter>
		<name>driverClassName</name>
		<value>oracle.jdbc.driver.OracleDriver</value>
		</parameter>
	        <parameter>
			<name>driverName</name>
			<value>jdbc:oracle:thin:@eou3:1521:incub</value>
		</parameter>
		<parameter>
			<name>url</name>
			<value>jdbc:oracle:thin:@eou3:1521:incub</value>
		</parameter>
		</ResourceParams>

Is the driverName correct. If someone is using classes12.zip could someone
tell whats the correct settings, if mine is wrong.
in web.xml have written as told.

the jsp has this

<%
try {
	Context ctx = new InitialContext();
	if(ctx == null ) 
		throw new Exception("Boom - No Context");

	DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/ora");
	if (ds != null) {
		Connection conn = ds.getConnection();
              
        if(conn != null)  {
			String foo = "Got Connection "+conn.toString();
            Statement stmt = conn.createStatement();
            ResultSet rst = stmt.executeQuery("select empno, ename from
emp");
			if(rst.next()) {
				foo=rst.getString(2);
			}
            conn.close();
		}
	}
} 
catch (SQLException E) {	
	out.println("<br>unable to get connection on ora !"); 
	out.println("<br>SQLException: " + E.getMessage());
	out.println("<br>SQLState: " + E.getSQLState());
	out.println("<br>VendorError: " + E.getErrorCode());
}
%>

Regards,
Vikramjit Singh,
Systems Engineer,
GTL Ltd.
Ph. 7612929-1031


-----Original Message-----
From: Jacob Kjome [mailto:hoju@visi.com]
Sent: Monday, June 24, 2002 8:04 AM
To: Tomcat Users List
Subject: Re: javax.naming.NamingException: Cannot create resource
instance


Hello Kumar,

Try using the "username" parameter.

Also, the solution that has worked flawlessly for me is here:

http://marc.theaimsgroup.com/?l=tomcat-user&m=102225547106556&w=2

Note that this is with the new 4.1.x versions of Tomcat.  If you are
using 4.0.x versions, your mileage may vary.

Jake

Monday, June 24, 2002, 10:00:38 AM, you wrote:

K> Hi,
K>    Can anyone help me how to configure JDBC DataSource using IBM DB2 as
the
K> database.I had gone through the solution "Generic DataSource Resource
K> Factory Available. JDBC Data Sources." posted by Mr.Anthony Dodd.But
there
K> the solution was explained using Oracle database.Has anyone tried
K> configuring a DataSource using DB2?

K> I'm using IBM DB2  7.1 (Driver - COM.ibm.db2.jdbc.app.DB2Driver)
K> Tomcat 4.0.2

K> Here are the snippets for server.xml,web.xml and the JVM stack trace:

K> server.xml:

K>     <Context path="/test" docBase="test" debug="0" reloadable="true">
K>   <Resource name="jdbc/myDS" type="COM.ibm.db2.jdbc.DB2DataSource"
K> reloadable="true" auth="Container"/>
K>   <ResourceParams name="jdbc/myDS">
K>    <parameter>
K>     <name>factory</name>
K>     <value>org.apache.naming.factory.DataSourceFactory</value>
K>    </parameter>
K>    <Parameter>
K>     <name>user</name>
K>     <value>db2admin</value>
K>    </Parameter>
K>    <Parameter>
K>     <name>password</name>
K>     <value>db2admin</value>
K>    </Parameter>
K>    <Parameter>
K>     <name>driverClassName</name>
K>     <value>COM.ibm.db2.jdbc.app.DB2Driver</value>
K>    </Parameter>
K>    <Parameter>
K>     <name>driverName</name>
K>     <value>jdbc:db2:sample</value>
K>    </Parameter>
K>   </ResourceParams>

K>   <Realm  className="org.apache.catalina.realm.JDBCRealm"
K>      connectionName="db2admin"
K>      connectionPassword="db2admin"
K>      connectionURL="jdbc:db2:sample"
K>      digest="SHA"
K>      driverName="COM.ibm.db2.jdbc.app.DB2Driver"
K>      roleNameCol="role_name"
K>      userCredCol="password"
K>      userNameCol="user_name"
K>      userRoleTable="user_roles"
K>      userTable="users" />
K>  </Context>

K> web.xml:

K>  <resource-ref>
K>   <description>DS resource factory</description>
K>   <res-ref-name>jdbc/myDS</res-ref-name>
K>   <res-type>COM.ibm.db2.jdbc.DB2DataSource</res-type>
K>   <res-auth>Container</res-auth>
K>  </resource-ref>

K> I get the following error when i try to lookup the datasource in my JSP:
K> ctx (java:comp/env) = org.apache.naming.NamingContext@42a80d
K> obj = myDS: org.apache.naming.ResourceRef
K> Error processing the request (doGet)  : Cannot create resource instance
K> javax.naming.NamingException: Cannot create resource instance
K>         at org.apache.naming.NamingContext.lookup(NamingContext.java:837)
K>         at org.apache.naming.NamingContext.lookup(NamingContext.java:181)
K>         at org.apache.naming.NamingContext.lookup(NamingContext.java:822)
K>         at org.apache.naming.NamingContext.lookup(NamingContext.java:194)
K>         at CheckDBServlet.doGet(CheckDBServlet.java:40)
K>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:1125)
K>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:1264)
K>         at
K>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
K> FilterChain.java:247)
K>         at
K>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
K> ain.java:193)
K>         at
K>
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
K> va:243)
K>         at
K>
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
K> 66)
K>         at
K>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
K>         at
K> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
K>         at
K>
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
K> va:215)
K>         at
K>
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
K> 66)
K>         at
K>
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase
K> .java:472)
K>         at
K>
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
K> 64)
K>         at
K>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
K>         at
K> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
K>         at
K>
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2366)
K>         at
K>
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164
K> )
K>         at
K>
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
K> 66)
K>         at
K> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:462)
K>         at
K>
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
K> 64)
K>         at
K>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
K>         at
K> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
K>         at
K>
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
K> :163)
K>         at
K>
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
K> 66)
K>         at
K>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
K>         at
K> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
K>         at
K>
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:
K> 1005)
K>         at
K>
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1098
K> )
K>         at java.lang.Thread.run(Thread.java:484)

K> Thanks,
K> Srinivas Kumar


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



-- 
Best regards,
 Jacob                            mailto:hoju@visi.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>


Mime
View raw message