写的类为:  
package  com.datasource;  
 
import  java.sql.Connection;  
 
import  javax.naming.Context;  
import  javax.naming.InitialContext;  
import  javax.sql.DataSource;  
 
public  class  ConnectDataSource  {  
           public  ConnectDataSource(){  
                         
           }  
             
           public  static  Connection  connectDataSource(){  
               Connection  conn  =  null;  
                       try{  
                                   Context  ctx  =  new  InitialContext();  
                                   if(ctx==null){  
                                               System.out.println(  "没有匹配的上下文环境  ");  
                                   }  
                                   DataSource  ds  =  (DataSource)ctx.lookup(  "java:comp/env/jdbc/myoracle  ");  
                                   if(ds==null){  
                                               System.out.println(  "没有匹配的数据库  ");  
                                   }  
                                   conn  =  ds.getConnection();  
                       }catch(Exception  e){  
                                   e.printStackTrace();  
                       }  
                       return  conn;  
           }  
         
           public  static  void  main(String[]  str){  
                       System.out.println(  "conn=  "+(new  ConnectDataSource().connectDataSource()));  
           }  
}  
 
它始终报错为:  
conn=null  
javax.naming.NoInitialContextException:  Need  to  specify  class  name  in  environment  or  system  property,  or  as  an  applet  parameter,  or  in  an  application  resource  file:    java.naming.factory.initial  
           at  javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:640)  
           at  javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243)  
           at  javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:280)  
           at  javax.naming.InitialContext.lookup(InitialContext.java:347)  
           at  com.datasource.ConnectDataSource.connectDataSource(ConnectDataSource.java:21)  
           at  com.datasource.ConnectDataSource.main(ConnectDataSource.java:33)