J'avais pour projet d'établir une connexion TCP entre un client et un serveur pour pouvoir transférer des objets java entre les deux. Quand on a un seul type d'objet qui transite entre le client et le serveur alors on connaît le type des objets à l'avance. Par contre, quand le serveur peut recevoir plusieurs types d'objets sur le même port de connexion c'est plus compliqué. En effet, coté serveur on récupère un objet de type object. Aucune autre information. Dès lors comment faire pour déterminer le type et éventuellement "caster" cet objet sur base de son seul type object déclaré ? Ce cas de figure peut se poser avec l'utilisation des ObjectInputStream et ObjectOutputStream. Prenons un exemple simplifié pour illustrer :
Soit un client qui peut envoyer des objets de type Abricot, Banane, Cerise, Datte et Epinard. Il envoie l'un d'eux. De l’autre coté, le serveur reçoit un objet de type Object. Existe-t-il une façon de faire en Java pour "caster" dynamiquement cet objet vers son type effectif sans connaître aucune autre information ? Dans cet exemple, quelle serait la solution pour un nombre quelconque de type ? Enfin si elle existeSi vous avez la moindre piste, je suis preneur.
Merci![]()
Partager