Bonjour,
Je sèche sur une partie de mon travail. Je dois réaliser 3applications qui communiquent entre elles en réseau. La connection,... se passe bien mais ce sont les échanges qui posent problème.
Je m'explique: Le client doit se connecter à une banque et pour s'identifier il doit envoyer son login et mot de passe à la banque. Ce que je récupère dans l'interface graphique et je le stocke dans:
Pour l'envoi/réception, j'ai pensé bon de créer une nouvelle classe ObjNetwork:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 class SimplifiedClient{ String name, password; ... }
Elle s'adapterait en fonction du type d'envoi (NewClient, BuyStock, Disconnect,...) avec chaque fois les objets nécessaires.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 class ObjNetwork{ String message; Object obj1; Object obj2; ... }
Donc dans le cas de la connection, je créée un ObjToSend:
J'envoie et puis dans la banque je reçois, l'objet ObjNetwork que je traite comme suit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 clientToto = new SimplifiedClient("Titi","12345"); ObjToSend = new ObjNetwork("NewClient", (Object) clientToto);
Les méthodes existent bien,... mais il n'arrive pas à m'afficher le nom de clientToto. J'ai l'impression que les casts dans les deux sens font que ça foire. (SimplifiedClient -> Object -> SimplifiedClient).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 clientToto = (SimplifiedClient)objToReceive.getObj1(); System.out.println(clientToto.getName()+" est connecté");
Dans la banque, je n'utilise pas de constructeur (étant donné que je caste). Faudrait-il en créé un, si oui comment?
Autrement comment pourrais-je faire pour transiter plusieurs variables d'un coup sans pour autant créer des nouvelles classes pour chaque type de communication?
Merci par avance pour votre aide.
Partager