Essaye de générer la classe stub avec rmic :
Cela va générer le fichier TestRMIServeurImpl_Stub.class, qui semble manquer à l'exécution de ton serveur.Code:
1
2 rmic test_rmi.TestRMIServeurImpl
Version imprimable
Je le fais via eclipse. Et dans le répertoire bin, j'ai bien un fichier TestRMIServeurImpl_Stub.class
Mais j'ai toujoursCitation:
instanciation de la classe distante : TestRMIServeurImpl
Enregistrement du serveur
Pb RMI, exception capturée : RemoteException occurred in server thread; nested exception is:
java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
java.lang.ClassNotFoundException: test_rmi.TestRMIServeurImpl_Stub
As-tu essayé d'exécuter ton serveur en dehors d'Eclipse ?
Il y a quelque chose d'étrange dans ta configuration. En fait, à partir de la version 5 de Java, les fichiers Stub sont générés à la volé, lors de l'exécution.
AMHA, l'erreur doit venir de la configuration de ton projet Eclipse. Car ton serveur marche.
Amicalement,
G. Sunyé
Bon, j'ai tout arrêté et j'ai relancé eclipse :
rmiregistry :
emplacement : C:\Program Files\Java\jdk1.6.0_17\bin\rmiregistry.exe
répertoire de travail : ${project_loc}\bin
rmic :
emplacement : C:\Program Files\Java\jdk1.6.0_17\bin\rmic.exe
répertoire de travail : ${workspace_loc:/cnam/bin}
Arguments : test_rmi.TestRMIServeurImpl
1- J'ai donc exécuté rmiregistry => pas de messages d'erreur.
2- J'ai exécuté rmic => pas de messages d'erreur.
3- lancement de MonServeur
4- lancement de MonClientCitation:
instanciation de la classe distante : TestRMIServeurImpl
Enregistrement du serveur
Serveur lancé
Donc ça fonctionne ;), je ne comprends rien, quoique, j'ai mis dans emplacement de rmiregistry ${project_loc}\bin au lie de ${project_loc}.Citation:
resultat : bonjour
Voilà
Bon bah merci les gars. Sauf s'il y a autre chose que je dois savoir.
Ok, je viens de retester et en effet, je n'ai pas besoin de lancer rmic.
Il faut donc premièrement lancer rmiregistry, compiler le serveur, puis lancer le client.
Merci
salut!
moi aussi en ce moment,je suis dans le RMI et .NET,j'ai repris ton petit exercice pédagogique pour me faire la main et je butes exactement sur les les même messages d'erreurs! :mrgreen:
J'en suis essayer de lancer tout depuis Eclipse.J'ai creer un external tools pour rmiregistry,un fichier policy.txt en allpermission et les classes:interface,classe d'implementation,serveur et client.
Dans l'ordre,je lances rmiregistry,le serveur,le client.
Il sembles que j'ai un pb avec le serveur, mon fichier stub ne se creer pas et j'obtiens:
Enregistrement du serveur
Enregistrement du serveur
Pb RMI, exception capturée : RemoteException occurred in server thread; nested exception is:
java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
java.lang.ClassNotFoundException: test_rmi.Information
TestRMI
chaine retournée =
je tournes avec: java 1.6 et EclipseIDE Par contre dans C:\Program Files\Java\jre6\bin il y a bien rmiregistry.exe mais pas rmic.exe.
Est-ce cela mon pb? Dois-je passer à la version JDK?
merci!!
Reprends mes codes les plus récents et re teste.
Attention de donner le bon chemin pour rmiregistry.