rmi问题:java.rmi.ConnectException: Connection refused to host: 172.20.5.180;
myair 2001-11-14 02:59:10 我在调试rmi的例程时,运行server端的程序时出现下面的错误:
java.rmi.ConnectException: Connection refused to host: 172.20.5.180;
在 Naming.rebind("SimpleCounterServer",server);
我的整个程序是(server):
1 SimpleCounterServer.java
public interface SimpleCounterServer extends java.rmi.Remote{
public int getCount() throws java.rmi.RemoteException;
}
2 SimpleCounterServerImpl.java
import java.rmi.*;
import java.rmi.server.UnicastRemoteObject;
public class SimpleCounterServerImpl
extends UnicastRemoteObject
implements SimpleCounterServer
{
private int iCount;
public SimpleCounterServerImpl() throws java.rmi.RemoteException
{
super();
iCount = 0;
}
public int getCount() throws RemoteException
{
return ++iCount;
}
public static void main(String args[])
{
if (System.getSecurityManager() == null) {
System.setSecurityManager(new RMISecurityManager());
}
try
{
SimpleCounterServer server = new SimpleCounterServerImpl();
System.out.println("SimpleCounterServer created");
Naming.rebind("SimpleCounterServer",server);
System.out.println("SimpleCounterServer registered");
}
catch(RemoteException x)
{
x.printStackTrace();
}
catch(Exception x)
{
x.printStackTrace();
}
}
}
运行步骤是:
1 javac *.java
2 rmic SimpleCounterServerImpl
3 start rmiregistry 2001
4 java -Djava.rmi.server.codebase=file:/f:\javaproject\rmi2\output\\/ -Djava.security.policy=java.policy SimpleCounterServerImpl
其中java.policy 是:
grant {
permission java.net.SocketPermission "*:1024-65535",
"connect,accept";
permission java.io.FilePermission
"f:\\javaproject\\rmi2\\output\\-", "read";
};
不知问题出在哪里?
谢谢了先