From 836ed59c4c2b9a88016620e60a4110a8652e9aed Mon Sep 17 00:00:00 2001 From: rubenpirreram Date: Tue, 5 May 2026 18:56:41 +0200 Subject: [PATCH] Fix: RMI no localhost --- .../it/polimi/ingsw/gc14/Network/RMI/Client/RMIClient.java | 3 +++ .../it/polimi/ingsw/gc14/Network/RMI/Server/RMIServer.java | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Client/RMIClient.java b/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Client/RMIClient.java index 77c6945..4bc8a21 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Client/RMIClient.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Client/RMIClient.java @@ -1,4 +1,5 @@ package it.polimi.ingsw.gc14.Network.RMI.Client; +import java.net.InetAddress; import java.rmi.RemoteException; import java.rmi.registry.LocateRegistry; import java.rmi.registry.Registry; @@ -53,6 +54,8 @@ public class RMIClient implements IClient { */ public boolean connect(String username,int preferredInt) { try { + String ip = InetAddress.getLocalHost().getHostAddress(); + System.setProperty("java.rmi.server.hostname", ip); Registry registry = LocateRegistry.getRegistry(host, port); this.stub = (IGameServer) registry.lookup("RMIGameServer"); ClientCallbackImpl callback = new ClientCallbackImpl(controller); diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIServer.java b/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIServer.java index 4a83a09..cf5d600 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIServer.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIServer.java @@ -8,12 +8,14 @@ import it.polimi.ingsw.gc14.Network.NetworkEvents.*; import it.polimi.ingsw.gc14.Network.RMI.Common.IClientCallback; import it.polimi.ingsw.gc14.Network.RMI.Common.IGameServer; +import java.net.InetAddress; import java.rmi.RemoteException; import java.rmi.registry.LocateRegistry; import java.rmi.registry.Registry; import java.rmi.server.UnicastRemoteObject; import java.util.Map; import java.util.Objects; +import java.util.Properties; import java.util.concurrent.BlockingQueue; import java.util.concurrent.ConcurrentHashMap; @@ -247,6 +249,9 @@ public class RMIServer extends UnicastRemoteObject implements IGameServer { */ public boolean start() { try { + String ip = InetAddress.getLocalHost().getHostAddress(); + System.out.println("Starting RMI Server on IP: " + ip); + System.setProperty("java.rmi.server.hostname", "10.8.0.3"); // o il tuo IP/hostname registry = LocateRegistry.createRegistry(nPort); registry.rebind("RMIGameServer", this); System.out.println("RMI Server started on port: "+nPort);