javax.naming.NoInitialContextException

时间:2011-09-23 10:42:41

标签: java jndi

getConnection异常javax.naming.NoInitialContextException:需要在环境或系统属性中指定类名,或者在applet参数中或在应用程序资源文件中指定类名:java.naming.factory.initial 空

当我在代码下面运行时,这是我得到的例外。

我已经在glassfishv3中创建了各自的jndi名称连接池 请给我任何解决方案......

谢谢..

import java.sql.Connection;
import java.sql.SQLException;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;

public class Test {

    /**
     * @param args
     */
    private static DataSource ds;

    private static Context initialContext = null;

    public static Connection getConnection()
    {
        try
        {
            initialContext = new InitialContext();
            ds = (DataSource) initialContext.lookup("jdbc/__TimerPool");
            System.out.println("data source "+ds);

                return ds.getConnection();


        }
        catch (Exception e)
        {
            System.out.println(("getConnection Exception " + e));
        }
        return null;
    }



    public static void main(String[] args) {
        System.out.println(Test.getConnection());

    }

}

1 个答案:

答案 0 :(得分:0)

ds = (DataSource) initialContext.lookup("jdbc/__TimerPool");

ds =(DataSource)initialContext.lookup(“java:comp / jdbc / __ TimerPool”);

编辑:抱歉,“java:comp / env / jdbc / __ TimerPool”。