Bonjour,
J'ai un problème sur mon application Java depuis que j'essaye de la faire tourner sur une JRE 1.6
IMPORTANT : L'application tourne parfaitement sur une JRE 1.5
(volontairement pour pas surcharger le topic, j'ai pas mis l'intégralité de mes lignes de code).
Dans le détail, je fais tout d'abord le démarrage de la Registry RMI ainsi :
(avec environment : une hastable contenant HOST et PORT)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 LocateRegistry.createRegistry(port); NamingManager.setInitialContextFactoryBuilder(new InitialServerContextFactory()); NamingManager.getInitialContext(environment);
Puis, j'ai une classe qui implémente Context :
La ligne qui plante en JRE 1.6 est le bind :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public class InitialServerContext implements Context { public void bind(String name, Object obj) throws NamingException { getRMIContext().bind("rmi://" + mServer + ':' + mPort + '/' + name, obj); } static Context getRMIContext() throws NamingException { return NamingManager.getURLContext("rmi", null); } }
getRMIContext().bind("rmi://" + mServer + ':' + mPort + '/' + name, obj);
Quels sont les changements entre la 1.5 et la 1.6 au niveau RMI ?
Pourquoi le bind de mon appli plante ?
Si c'est nécessaire, je peux vous fournir ma classe InitialServerContextFactory.java
Merci pour vos réponses...
Partager