DlgLogin-148: 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

解决方案 »

  1.   

    源代码如此:
       public static LinkBean connectToEJB() throws Exception {
            try {
                Context ctx = new InitialContext();
                //Modified by yuchao 2003-2-26
                System.out.println("Start lookup XzsEjb");
                Object obj = ctx.lookup("XzsEJB");
                //Object obj = ctx.lookup("java:comp/env/ejb/XzsEJB");
                LinkBeanHome home = (LinkBeanHome)PortableRemoteObject.narrow(obj,  LinkBeanHome.class);
                LinkBean bean = home.create();
                return bean;
            }catch (Exception e) {
                throw new Exception(e.toString());
            }
        }
      

  2.   

    试试Object obj = (Object)ctx.lookup("XzsEJB");
      

  3.   

    看你的程序好像没什么问题,,有可能你的ejb发布没有成功,
    又或者是jndi有问题。如果你用wsad来做的话,就没有这种问题了,可以直接调试ejb的~
      

  4.   

    但是我还做客一个测试完全通过了,我用的是j2ee引用实现