“Naming.rebind(myName,theServer)“ 改成 Naming.rebind(theServer,myName);        

解决方案 »

  1.   

    回复JAVAMAN1997:谢谢你,不过这样改的后果是连编译都不通过!
      

  2.   

    看来javaman1977(大海)是在跟你开玩笑。呵呵!
    你的程序是报安全错误。是因为你的程序中server端有一个SecurityManager,所以你需要写一个.policy文件(如:server.policy)来允许你的程序访问本机的rmi相应端口(default好象是:1099)。
    运行时:java -Djava.policy=server.policy RemoteObject
    试试。
      

  3.   

    我也遇到过这种情况,具体点,怎么写一个.policy文件
    在JBUILDER中如何做
      

  4.   

    .policy文件的格式可以参考jdk1.3\jre\lib\security\java.policy文件,也可看看:
    http://java.sun.com/docs/books/tutorial/security1.2/index.html
    另外java2核心中有关于rmi的介绍,比较详细。
      

  5.   

    hehe 
    其实你在本机器跑这个程序,根本就不用装安全策略,可以省略他“System.setSecurityManager (new RMISecurityManager()); “
      假如你要装,我给你一个例子
    grant {
    // Allow everything for now
    permission java.security.AllPermission;
    };