Bonsoir à tous,
Je développe une application, composée d'une IHM, d'un serveur, et d'une base de données Oracle.
L'IHM et le Serveur sont reliés par une connection reseau HTTP.
J'ai besoin de faire passer des objets persitants du serveur vers l'IHM.
(plus précisément, des ArrayList<AchatsPersistant>)
La classe AchatPersitant possède un attribut de la classe Persitant.
la classe Persistant possède un attribut de l'interface SGBD, qui se connecte à Oracle par l'intermédiaire d'un driver.
L'erreur que j'ai: c'est que Oracle.driver. ResultSetR1 qui n'est pas Serializable. (P.S. Je n'ai pas l'erreur exacte, je n'ai pas Oracle en local, et je ne peux pas me connecter actuellement)
Et le problème, c'est que autant sur mes classes, je peux les faire implémenter Serializable, autant toutes les classes Oracles je ne peux pas y toucher (je n'ai que les .class)
-----
Je pensais:
1° Créer une nouvelle classe qui hérite de Oracle et qui est Serializable
2° changer tous mes objets persistants en objets non persistants avant de les envoyer à l'IHM. (mais ca rendrait la persistance inutile il me semble)
3° s'arranger pour que l'attribut SGBD soit nul (en clonant l'objet persistant par exemple) pour ne plus trimballer toute la chaîne (et ca l'IHM elle n'en a pas besoin)
Mais je perdrais sans doute ma connection à Oracle
Mais le but de la persistance, ce n'est pas le fait de n'être connecté à la BDD juste pour charger les objets persistants au début, et les sauvegarder de temps en temps?
Enfin bon, si quelqu'un aurait une petite idée pour me dépanner, j'en serais ravi!
Bonne soirée.
Partager