Bonjour,
Je plante depuis des heures sur une erreur. Je travaille sur une application client serveur en utilisant les packages rmi. J'utilise depuis mon poste client des procédures du poste serveur. Elles marchent toutes sauf une. Voici le message d'erreur que j'obtiens :
Code :
- java.lang.IllegalArgumentException: argument type mismatch
- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
- at java.lang.reflect.Method.invoke(Unknown Source)
- at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
- at sun.rmi.transport.Transport$1.run(Unknown Source)
- at java.security.AccessController.doPrivileged(Native Method)
- at sun.rmi.transport.Transport.serviceCall(Unknown Source)
- at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source)
- at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Source)
- at java.lang.Thread.run(Unknown Source)
- at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(Unknown Source)
- at sun.rmi.transport.StreamRemoteCall.executeCall(Unknown Source)
- at sun.rmi.server.UnicastRef.invoke(Unknown Source)
- at ServeurForum_Stub.enregistrerSujet(Unknown Source)
- at FournisseurDeSujet.main(FournisseurDeSujet.java:17)
- Exception in thread "main"
|
Ma procédure prend deux paramètres. Elle est appelée de cette façon :
Code :
- try {sujet = new SujetDiscussion("sport" );
- leServeur.enregistrerSujet("sport",sujet);
- }
- catch ( RemoteException e1) {System.out.println(e1);}
- }
|
Ma fonction enregistrerSujet est paramétré comme tel :
public void enregistrerSujet(String titre,SujetDiscussion sujet) throws RemoteException;
Mes variables utilisées ici sont toutes initialisées et ont le bon type.
Auriez-vous une petite idée du problème?
Merci.