我已经尝试了所有香港专业教育学院阅读有关这个问题,我不修复它。因此,我将给它一个机会,其他人得到相同的错误,没有什么能解决它。我的一个朋友有一个根服务器,其他运行的网络Java应用程序。我在IPTables(1099注册表)中打开了端口。我在服务器代码中启动了注册表。我将服务器的System.property主机名地址设置为91.54.2.10和其他ipadress字段中的地址。在localhost上一切都很好,但不是在linux世界。 我已经ping了服务器:好的,我已经netstat与netstat -napt | grep 1099和端口ist侦听我的服务器出现[服务器]在端口1099上侦听,客户端尝试连接。几秒钟后,服务器会在连接超时的情况下推送异常。 我已经设置了/ etc / hosts 127.0.1.1 localhost 127.0.0.1 localhost PublicADRESS localhost
我不知道这件事是什么?!我试过一切,任何人都可以理解为什么这不起作用?
http://www.fotos-hochladen.net/view/runningserveriqa4wy61x0.png
客户端
public void generateConnection() {
System.setProperty("java.security.policy", "client.java.policy");
if (System.getSecurityManager()==null) {
System.setSecurityManager( new RMISecurityManager() );
} else {
}
try {
Registry registry = LocateRegistry.getRegistry(xx.xx.xx.xx, Registry.REGISTRY_PORT);
chatserver = (CServer) Naming.lookup("rmi://"+xx.xx.xx.xx+"/server");
CClientImpl client = new CClientImpl();
client.setUsername(username);
chatserver.login(client);
} catch (RemoteException | NotBoundException e) {
e.printStackTrace();
JOptionPane.showMessageDialog(null, "Server is not online!");
connectbutton.setEnabled(true);
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public class ChatServer {
public static ChatServer instance;
public static ChatServer getInstance() {
if(instance==null) {
instance = new ChatServer();
}
return instance;
}
public void generateNetwork() {
System.setProperty("java.security.policy", "server.policy");
if (System.getSecurityManager()==null) {
System.setSecurityManager( new RMISecurityManager() );
}
try {
System.setProperty("java.rmi.server.hostname", "xx.xx.xx.xx");
Registry reg = LocateRegistry.createRegistry(Registry.REGISTRY_PORT);
CServerImpl chatserver = CServerImpl.getInstance();
Naming.rebind("rmi://localhost/server", chatserver);
System.out.println("[Server] Listening on Port "+Registry.REGISTRY_PORT);
} catch (RemoteException e) {
e.printStackTrace();
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
ChatServer.getInstance().generateNetwork();
}
}