serveur contacte un des clients - Divers - Programmation
MarshPosté le 11-12-2005 à 11:58:54
bonjour je vais vous expliquer mon probleme. Je sais pas comment faire pour que mon serveur puisse contacter ses clients, je sais faire client vers serveur, mais que ensuite le serveur instancie une methode sur le client pffffff???? car avec le client on a une variable qui represente le serveur mais avec le serveur rien qui represente le client. Si vous pouver m'aider car la je suis coincé voila j'ai fais un truc dite moi si ce qui va pas car il met une exception alors que la connection au serveur est etablie correctement.
Exception in thread "main" java.lang.NoSuchMethodError: serveur.enregistrementUt ilisateur(Ljava/lang/String;Ljava/lang/ObjectZ at interfacegraphique.<init>(interfacegraphique.java:64) at essai.main(essai.java:4)
//constructeur //initialise le Hashtable users public serveurImpl() throws RemoteException { users = new Hashtable(); }
//méthode accessible à distance par le client permet de s'enregistré dans users public synchronized void enregistrementUtilisateur(String nom,Object user) { users.put(nom, user);
}
//méthode accessible à distance par le client permet d'envoyer un message public void envoitir(int a,int b) throws RemoteException { eUsers = users.elements(); while (eUsers.hasMoreElements()) { interfacegraphique user = ( (interfacegraphique) eUsers.nextElement());
user.recoitir(a,b );
} }
//méthode accessible à distance par le client permet de se retiré de users public synchronized void effacerUtilisateur(String nom) { users.remove(nom); }
}
""""""""""""""""""""""""""""""""partie du client pour l'enregistrement"""""""""""""""""""""""" try { connex.enregistrementUtilisateur(nom, this); } catch (RemoteException ex) { ex.printStackTrace(); }
Marsh Posté le 11-12-2005 à 11:58:54
bonjour je vais vous expliquer mon probleme.
Je sais pas comment faire pour que mon serveur puisse contacter ses clients, je sais faire client vers serveur, mais que ensuite le serveur instancie une methode sur le client pffffff????
car avec le client on a une variable qui represente le serveur mais avec le serveur rien qui represente le client.
Si vous pouver m'aider car la je suis coincé
voila j'ai fais un truc dite moi si ce qui va pas car il met une exception alors que la connection au serveur est etablie correctement.
Exception in thread "main" java.lang.NoSuchMethodError: serveur.enregistrementUt
ilisateur(Ljava/lang/String;Ljava/lang/ObjectZ
at interfacegraphique.<init>(interfacegraphique.java:64)
at essai.main(essai.java:4)
"""""""""""class serveur""""""""""""""""""""""""""""""""""""
import java.rmi.*;
import java.lang.*;
import java.util.*;
import java.rmi.server.*;
public class serveurImpl
extends UnicastRemoteObject implements serveur
{
private Enumeration eUsers;
private Hashtable users;
//constructeur
//initialise le Hashtable users
public serveurImpl() throws RemoteException
{
users = new Hashtable();
}
//méthode accessible à distance par le client permet de s'enregistré dans users
public synchronized void enregistrementUtilisateur(String nom,Object user)
{
users.put(nom, user);
}
//méthode accessible à distance par le client permet d'envoyer un message
public void envoitir(int a,int b) throws RemoteException
{
eUsers = users.elements();
while (eUsers.hasMoreElements())
{
interfacegraphique user = ( (interfacegraphique) eUsers.nextElement());
user.recoitir(a,b );
}
}
//méthode accessible à distance par le client permet de se retiré de users
public synchronized void effacerUtilisateur(String nom)
{
users.remove(nom);
}
}
""""""""""""""""""""""""""""""""partie du client pour l'enregistrement""""""""""""""""""""""""
try
{
connex.enregistrementUtilisateur(nom, this);
}
catch (RemoteException ex)
{
ex.printStackTrace();
}
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
---------------
---------