/*************************/
//ConverterClient.java
/*************************/
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.rmi.PortableRemoteObject;public class ConverterClient {   public static void main(String[] args) {
       try {
           Context initial = new InitialContext();
           Object objref = initial.lookup("Converter");           ConverterHome home = 
               (ConverterHome)PortableRemoteObject.narrow(objref, 
                                            ConverterHome.class);           Converter currencyConverter = home.create();           /****自己的方法****/           System.exit(0);       } catch (Exception ex) {
           System.err.println("Caught an unexpected exception!");
           ex.printStackTrace();
       }
   } 
}

解决方案 »

  1.   

    这可能是因为你的 INITIAL_CONTEXT_FACTORY 没有设置,一般情况下,JBuilder自动生成客户端程序的时候,都会有一个getInitialContext()方法,里面是设置上面那个的,你的没有吗?!你的环境变量错误!好好找找吧!
      

  2.   

    有三种方法解决(指定为jndi的weblogic提供者):
    1. 采用硬编码
      Properties p = new Properties();
      p.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
      p.put(Context.PROVIDER_URL, "t3://server:7001");
      Context ctx = new InitialContext(p);
    2. 在命令行中加入选项,定义java属性
      -Djava.naming.factory.initial=weblogic.jndi.WLInitialContextFactory -Djava.naming.provider.url=t3://server:7001
    3. 在jndi.properties文件中指定
      java.naming.factory.initial=weblogic.jndi.WLInitialContextFactory
      java.naming.provider.url=t3://server:7001jsp能够运行是因为容器已经定义了java属性.在容器外运行的可能的方法如上所述,你还需要指定提供者的类路径及jndi服务器需要启动(如Weblogic Server).你的JBuilder需要重新设置.
      

  3.   

    To: lalapigs(云贼)
      我是自己写的,没用JBUILDER自动生成.刚才回去看了一下自动生成的文件.是我自己没搞清楚.谢谢提醒.
    To:  jzlei() 
      方法1.我调试通过了.方法2没通过.方法3里的jndi.properties在哪里,我机器上只有C:\JBuilder6\samples\Ejb\Ejb20\ESite\jndi下有这个文件.
      对"指定提供者的类路径及jndi服务器需要启动",请再麻烦你讲清楚一点.谢谢.
      

  4.   

    方法2:
      java -Djava.naming.factory.initial=weblogic.jndi.WLInitialContextFactory -Djava.naming.provider.url=t3://server:7001 -classpath %CLASSPATH%;{jndi提供者的类路径,即weblogic.jar} ConverterClient方法3:
      我也没试过,你可试一下放到JRE/lib目录下;jndi server内置于Weblogic Server.
      

  5.   

    哇,,都是高人。。佩服ing..我要学习ing各位高人月薪都有多少啊!!