你有没有实现getEJBObject()?javax.ejb.Handle是一个interface!

解决方案 »

  1.   

    我认为ejb由于和容器有密切关系,所以应该是从home接口创建出来的,从保存的handle中应该得不到对象。
      

  2.   

    是不是不能直接造型,要用PortableRemoteObject.narrow()
      

  3.   

    对!我从来没有看到过直接生成handle的,都是使用narrow()来得到一个home,然后create一个的。你可以试试在你的loadhandle中也使用main中的方法来得到bank。
      

  4.   

    直接使用handle可以省去jndi查找,并且对于有状态的会话bean可以取得上次里开时的状态
      

  5.   

    改成下面这样就可以了,具体原因我不知道
    Bank bank = (Bank)PortableRemoteObject.narrow(handle.getEJBObject(),Bank.class);