RMI - Passer un objet Remote en paramètre d'une méthode
Bonjour,
Je suis débutant en RMI java.
Après avoir consulté de nombreux tutos, je n'ai trouvé nul part ma réponse.
J'ai un Serveur et un Client.
Le Serveur a deux classes : User et Note
J'ai créé toutes les interfaces et classes nécessaires.
Le client récupère les références d'un User et d'une Note.
Code:
1 2
| User user = (User) Naming.lookup("rmi://localhost:2048/user");
Note note = (Note)Naming.lookup("rmi://localhost:2048/note"); |
Le client peut appeler des méthodes sur User et Note, tout ceci fonctionne, par exemple :
Code:
1 2
| note.setTitre("mon titre");
user.setPrenom("toto"); |
Par contre, à un moment, le Client doit appeler une méthode de ce genre :
Et là ça plante, j'ai cette erreur :
Citation:
Erreur : java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
java.rmi.UnmarshalException: unrecognized method hash: method not supported by remote object
Je pense que c'est parce-que je passe l'objet note en paramètre, qui est lui même un objet distant..
J'ai vu à des endroits qu'il fallait implémenter "Serializable", mais ça ne marche pas, toujours la même erreur.
En fait, je voudrais passer un objet Remote en paramètres d'une méthode, comment faire svp ?
Si je passe des paramètres de type "String", "int", etc... tout fonctionne.
Merci beaucoup.