prob rmi [RESOLU] - Java - Programmation
Marsh Posté le 06-05-2007 à 20:26:36
ReplyMarsh Posté le 09-05-2007 à 13:46:39
Taz a écrit : le problème est à la ligne 42 dans le dossier antilope |
bon alors en fait, j'ai un serveur rmi :
Code :
|
j'insère l'objet implementant l'interface remote dans le table du registry au port 1099 (celui par défaut de rmi) en lui donnant le nom RESULTAT
avant cela j'ai ouvert une connection avec un serveur de BD(H2) ( je le précise car quand le serveur est stoppé, pas de soucis ):
Code :
|
Une fois cette application compilée, je la lance.
j'ai le client rmi :
Code :
|
et donc je compile& lance le client
et parfois j'obtient une exception provenant du client, qui dit "no such object in table" provenant de la ligne : "this.stub = (Interface_RMI) registry.lookup("RESULTAT" );"
et je relance le serveur et la il ya 1 chance sur 2 que ca fonctionne.
vous avez une idée de quoi cela peut venir?
Marsh Posté le 11-05-2007 à 11:29:11
bon pour ceux que ca intéresse et/ou qui peuvent être confrontés au même problème.
il suffit de faire un appel a Thread.sleep(xxx) avant l'insertion de l'objet remote dans la table avec registry.bind car l'UnicastRemoteObject n'a pas toujours le temps d'être créé avant son insertion.
voila
Marsh Posté le 06-05-2007 à 16:47:59
Salu,
j'ai une application client/serveur, sur le serveur il y a une BD embarquée (H2 en l'occurrence) et j'utilise du rmi pour le dialogue client/serveur.
sequentiellement sur le serveur ça donne :
- demarrage de H2
- lancement du serveur RMI
## utilisation de l'app
- fermeture de H2
- fin du rmi
seulement si je fais ca, le client me retourne une Exception -> no such object in table
alors que si je ferme la base avant le lancement du client, il n'ya pas de soucis.
j'ai pensé que ca pouvait venir de l'utilisation du même port entre une routine propre a H2 et mon serveur rmi, mais le changement de port du serveur rmi ne change rien.
pouvez vous m'éclairer ?? merci
Message édité par bigears le 11-05-2007 à 11:29:52