最初に、私が取得している例外があります: http://i.imgur.com/dE5Ou.png
少し背景を説明するために、Java の RMI を使用して 2 台のリモート コンピューター (クライアント/サーバー) を接続する単純な RMI プログラムを作成しようとしています。サーバー プログラムを起動して実行していますが、クライアント プログラムを実行すると、上記のリンクに示されている例外が発生します。192.168.0.104 に接続するように指示しているので、「接続がホストへの接続を拒否しました: 127.0.1.1」と表示されるのはなぜですか?
クライアント
public class Client
{
public static void main(String[] args)
{
ServerInterface server;
Registry registry;
try
{
registry = LocateRegistry.getRegistry("192.168.0.104", (new Integer(1099)).intValue());
server = (ServerInterface)Naming.lookup("//192.168.0.104/ServerTest");
String serverString = server.getAndSetMessage("Connecting");
System.out.println("Reply from the server is: " + serverString);
}
catch(Exception e)
{
e.printStackTrace();
System.exit(1);
}
}
}
サーバ
public class Server extends UnicastRemoteObject implements ServerInterface
{
static String hostName = "192.168.0.104";
String name;
public Server(String name) throws RemoteException
{
super();
this.name = name;
}
public String getAndSetMessage(String message) throws RemoteException
{
return("My name is " + name + " Thanks for message " + message);
}
public static void main(String args[])
{
try
{
String objectname = "ServerTest";
Server theServer = new Server(objectname);
Naming.rebind("//"+hostName+"/"+objectname,theServer);
System.out.println("//"+hostName+"/"+objectname);
System.out.println("I am Registered");
}
catch (Exception ex)
{
System.out.println(ex);
System.exit(1);
}
}
}