Bonjour,
J'ai une question concernant les RMI.
Je me sers du pluggin RMI Plug-in for Eclipse (donc je travaille sous Eclipse) pour gérer les rmi. J'ai suivi le tutoriel du site en question : http://www.genady.net/rmi/v20/demos/.
Dans l'ordre, je démarre le registre local (serveur de nom ?) sur le port 1099. Je fais un "Run as RMI Application" sur la classe de mon 'serveur'. Après quoi j'initialise l'adresse du codeBase. Puis "run".
Au lancement j'ai les erreurs suivantes dans la console :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
Exception in thread "main" java.security.AccessControlException: access denied (java.net.SocketPermission 127.0.0.1:1099 connect,resolve)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
at java.security.AccessController.checkPermission(AccessController.java:546)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
at java.lang.SecurityManager.checkConnect(SecurityManager.java:1034)
at java.net.Socket.connect(Socket.java:519)
at java.net.Socket.connect(Socket.java:475)
at java.net.Socket.<init>(Socket.java:372)
at java.net.Socket.<init>(Socket.java:186)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:22)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:128)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:595)
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:198)
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:184)
at sun.rmi.server.UnicastRef.newCall(UnicastRef.java:322)
at sun.rmi.registry.RegistryImpl_Stub.rebind(Unknown Source)
at java.rmi.Naming.rebind(Naming.java:160)
at MessageRouteur.main(MessageRouteur.java:144) |
L'exception
java.security.AccessControlException: access denied (java.net.SocketPermission 127.0.0.1:1099 connect,resolve)
a attiré mon oeil. Peut être que le port 1099 n'est pas ouvert ici ?
J'essaye alors de démarrer le registre local sur un autre port. Mais j'ai exactement la même erreur avec le même numéro de port. Donc le registre local ne semble pas influencer le port de connexion pour les Sockets. Comment modifier le numéro de port ?
Du coup je ne sais pas comment résoudre mon erreur, ni même si l'erreur est liée à cette histoire de port ?.. Est-ce que certaines personnes ont une expérience dans les RMI pour m'apporter un peu d'aide ?
En tout cas je vous remercie d'avance.
Partager