服务器是weblogicjavax.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.cn.TestPool.connect(TestPool.java:21)
at com.cn.TestPool.<init>(TestPool.java:11)
at com.cn.TestPool.main(TestPool.java:37)

解决方案 »

  1.   

    java.naming.factory.initial
    数据源没配置好吧?
      

  2.   

    我用的是tomcat,,,数据源的各项参数不是很理解,请高人点指一二....
      

  3.   

    你的程序是个独立的java类,不是在weblogic里面执行的吧,
    这样的话你在InitialContext的时候要指定参数。
        private static Context getInitialContext() throws NamingException {
            String url = "t3://localhost:80";
            Properties h = new Properties();
            h.put(Context.INITIAL_CONTEXT_FACTORY,
                    "weblogic.jndi.WLInitialContextFactory");
            h.put(Context.PROVIDER_URL, url);
            System.out.println("test begin");
            return new InitialContext(h);
        }