Bonjour,
Je developpe une appli client/serveur avec des RMI et je rencontre un problème lorsque j'essaye de faire des test.
- En réseau local, pas de problème, l'appli tourne bien
- Via internet, le client rencontre une erreur:
java.rmi.ConnectException: Connection refused to host xxx.xxx.xxx.xxx;
J'ai essayé de rajouter un fichier de politique de sécurité côté client et côté serveur:
avec dans le fichier policy:
Code : Sélectionner tout - Visualiser dans une fenêtre à part System.setProperty("java.security.policy","Server.policy");
Par contre, je n'arrive pas à savoir si java prend en compte ce fichier, vu que si je fais une erreur dans le nom de fichier, il ne leve pas d'exception.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 grant{ permission java.security.AllPermission; };
Pour info, j'ai redirigé le port d'écoute vers le serveur, donc l'erreur ne viens pas de là.
Au cas où, je vous met le code RMI côté client et serveur:
Serveur:
Client:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Registry registry; //On crée le registry sur le port 18500 registry = LocateRegistry.createRegistry(18500); welcomeMessage(); Plateau stub; PlateauImpl service = new PlateauImpl(); stub = (Plateau) UnicastRemoteObject.exportObject(service,0); registry.rebind("Plateau", stub);
Voila, merci à ceux qui pourront m'aider
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Registry registry = LocateRegistry.getRegistry("xxx.xxx.xxx.xxx",18500); this.plateau = (Plateau)registry.lookup("Plateau");
Partager