你是在applet中试验RMI吗、
安全受限。

解决方案 »

  1.   

    不是applet,就是一般的控制台程序,怎样解决安全受限的问题呢?
      

  2.   

    策略文件(policy)中的权限不够。
      

  3.   

    自建一个权限文件即可!
    自己生成一个java.policy文件,内容如下:grant{
          permission java.security.AllPermission;
    };执行时命令: java -Djava.security.policy=file:java.policy ***
       (***是你的class文件)
      

  4.   

    // host
    package RMITest;import java.rmi.*;
    import java.rmi.registry.*;public class DisplayPerfectTime {
    public static void main(String[] args) throws Exception {
    System.setSecurityManager(new SecurityManager());
    PerfectTimeI t = (PerfectTimeI)Naming.lookup("//home-hannibal:2005/PerfectTime");
    for (int i = 0; i < 10; i++) {
    System.out.println("Perfect time = " + t.getPerfectTime());
    }
    }
    }// Remote
    package RMITest;import java.rmi.*;
    import java.rmi.server.*;
    import java.rmi.registry.*;
    import java.net.*;interface PerfectTimeI extends Remote {
    long getPerfectTime() throws RemoteException;
    }public class PerfectTime extends UnicastRemoteObject implements PerfectTimeI {
    public long getPerfectTime() throws RemoteException {
    return System.currentTimeMillis();
    }

    public PerfectTime() throws RemoteException {
    } public static void main(String[] args) throws Exception {
    LocateRegistry.createRegistry(2005);
    System.setSecurityManager(new RMISecurityManager());
    PerfectTime pt = new PerfectTime();
    Naming.bind("//home-hannibal:2005/PerfectTime", pt);
    System.out.println("Ready to do time");

    //
    }
    }
      

  5.   

    remote可以运行起来了,但是host还是说连接被拒绝Exception in thread "main" java.rmi.ConnectException: Connection refused to host
    : 210.29.138.162; nested exception is:...