你有个"TestBean"
你可以lookup("Test");
服务器部署ejb的时候为它起的名字

解决方案 »

  1.   

    每个EJB都会有一个jndi-name做为home接口,(你在xml中就配置好了的)
       Object objref = context.lookup(your-jndi-name);
       home = (YourHome)PortableRemoteObject.narrow(objref, YourHome.class);
    得出的home就是你要找的接口
      

  2.   

    bas deploy EJB时候,你那个bean的JNDI
      

  3.   

    public class AcountTestClient1 {
      private AcountHome acountHome = null;
      private Acount acount=null;
      private AcountPK acountPK=null;
      /**Construct the EJB test client*/
      public AcountTestClient1() {
        try {
          //get naming context
          Context ctx = getInitialContext();      //look up jndi name
          Object ref = ctx.lookup("Acount");      //cast to Home interface
          acountHome = (AcountHome) PortableRemoteObject.narrow(ref, AcountHome.class);
          //acount = acountHome.create(4,"ss");
          acountPK = new AcountPK();
          acountPK.userid= 1 ;
          acount = acountHome.findByPrimaryKey( acountPK ) ;
          acount.setName("fuck you") ;
          System.out.println(acount.getName() ) ;    }
        catch(Exception e) {
          e.printStackTrace();
        }
      }