是不是你的接口类型定义有问题!定义成local/remote试试!

解决方案 »

  1.   

    如果调用程序写成应用程序形式(有main主函数)是无法进行本地调用的。本地调用是ejb2.0的特性,是为ejb实体beans提供调用以增加效率
      

  2.   

    直接lookup jnid名字.不要加什么java:env:com 之类的东西 ------------------------------------------------------
               我们还年轻牛奶会有的奶牛也会有的 
                 可天天在 csdn 混这些会有吗 ??
      

  3.   

    我将代码附上,各位指点
    initContext.setUrl("t3://localhost:7001");\\initContext是我初始化环境的对象
    Context ctx = initContext.getContext();
    baseInfoHome =(BaseInfoSessionLocalHome)ctx.lookup("BaseInfoSessionLocal");
    //Object ob = ctx.lookup("BaseInfoSession");
    //baseInfoHome = (BaseInfoSessionHome)PortableRemoteObject.narrow(ob,BaseInfoSessionHome.class);
    在lookup远程home对象时(后三行),正常.
      

  4.   

    你确认你的ejb部署成功了吗?你在应用服务器里面能找到这个jndi name吗?例如在weblogic的view jndi tree里面能找到你的ejb名字吗?
      

  5.   

    上面的老大在weblogic中ejb部署成功,你说的view jndi tree 在什么位置,能说细点吗?我用的是weblogic 7,
      

  6.   

    String url="t3://localhost:7001";localhost=127.0.0.1可能你的改一下
      Properties h = new Properties ();
      h.put(Context.INITIAL_CONTEXT_FACTORY,
    "weblogic.jndi.WLInitialContextFactory");
               ctx  =  new  InitialContext(h);
      

  7.   

    你用右建点击你的服务器名如myserver就可以看到了,不过既然你说你的远程对象可以找到,那应该不是这个问题。