TestHome th=(TestHome)javax.rmi.PortableRemoteObject.narrow(obj,TestHome.class);
Test t=th.create();
中的TestHome和Test是你写的bean中的接口,由于你没有把你写的bean加入所以找不到,应该在开头加上
import Test.*;
并把你打包好的Bean——Test.jar考到同一目录下。

解决方案 »

  1.   

    这是异地客户端,如果像sleepingsprite() 说的这样做,跟在本地有什么区别?
      

  2.   

    这不是本地与异地的问题,”Test t=th.create();“的意思是定义一个Test的对象,Test.jar里有你定义的Test 。如果你没有Test.jar怎么可能?
    就好比你没有Java的基本类库你怎么能用String类?
    如果要异地调用的话,也要把Test.jar放到异地计算机上。
      

  3.   

    我也遇到这种问题
    楼主没有把客户端包加入classpath,
    所以就无法找到了!!
    编译是用以下命令应该可以:
    javac -classpath %classpath%;...\*Client.jar;  TestE.java
    ("..."是你客户端包所在的目录,*Client.jar为部署EJB时返回的客户端)