不是不能用"/",是说你的程序没有访问jndi的权限

解决方案 »

  1.   

    楼上老兄,我的程序是以root权限在控制台下执行,如何解决权限的问题?
      

  2.   

    是weblogic server吗?检查一下你的domain是否正确,因为不同的domain下的用户不是通用的。
      

  3.   

    1.) 
    a.)Created a dir /jndi and a jdbc under the jndi dir
    b.) chmod -R 777 /jndi
    2.) my jndi code looks like this...Hashtable jndienv = new Hashtable();
    jndienv.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.fscontext.RefFSContextFactory");
    jndienv.put(Context.OBJECT_FACTORIES, "com.sybase.jdbc2.jdbc.SybObjectFactory");
    jndienv.put(Context.PROVIDER_URL, "file:/jndi/");
    try {
    Context ctx = new InitialContext(jndienv);// ctx.getEnvironment(); 
    ctx.bind("jdbc/myASE", ds );
    System.out.println("ENV-->"+ctx.getEnvironment());
    // System.out.println("Bound DataSource into Name Space for JNDI");
    }
    catch (NamingException e)
    {
    System.out.println("Bind Error into Name Space for JNDI error -->"+e);}
      

  4.   

    to  rainight(雨夜聆风)
    谢谢答复,上面的内容我也看到过,我的数据源是在TOMCAT的server.xml里以GlobalNamingResources的形势注册的,我想知道在命令行程序里如何lookup到,我在windows环境里是可以正常lookup的,但在linux环境了却lookup不到,所以才在命令行程序里重新绑定,是不是不能在命令行程序里lookup TOMCAT下的GlobalNamingResources呢?