You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by asd <li...@hotmail.com> on 2004/02/03 10:34:52 UTC
an question occured during using tomcat5.0
All friends:
hello.
I had used DataSource accompanyed with tomcat5.I configured this Data which named "JDBC/ORADB" via the web page "http://localhost:8080/admin",everything was completed.then ,i retrieved this DataSource on my client which is an application.
My core code of client is here:
java.util.Properties p = new java.util.Properties();
p.put( Context.INITIAL_CONTEXT_FACTORY,"org.apache.naming.factory.ResourceFactory");
//p.put( Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.fscontext.RefFSContextFactory");
p.put( Context.PROVIDER_URL,"http://localhost:8080");
// System.setProperty("java.naming.factory,initial", "org.apache.catalina.users.MemoryUser");
try {
Context context = new javax.naming.InitialContext( p);
Context initCtx = ( Context)context.lookup("java:comp/env");
DataSource ds = ( DataSource) initCtx.lookup("JDBC/ORADB");
return ds;
} catch (NamingException e) {
e.printStackTrace();
return null;
}
but it failed.And the all err message like this :
javax.naming.NoInitialContextException: Cannot instantiate class: org.apache.naming.factory.ResourceFactory. Root exception is java.lang.ClassCastException
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:649)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243)
at javax.naming.InitialContext.init(InitialContext.java:219)
at javax.naming.InitialContext.<init>(InitialContext.java:195)
at com.airversal.cer.utility.service.ServiceImp.getDataSource(ServiceImp.java:48)
at com.ariversal.cer.debug.DSTest.main(DSTest.java:21)
i do not know what had happend.i look view some sample code on www.apache.org. They all are too simple.Error occur with my try.
what had happend or how did i use datasource with tomcat5,i beg someone give me some introduce and some advise .