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:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
System.setProperty("java.security.policy","Server.policy");
avec dans le fichier policy:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
grant{
permission java.security.AllPermission;
};
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.

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:
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);
Client:
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");
Voila, merci à ceux qui pourront m'aider