Salut,
J'ai une classe qui contient plusieurs attributs, dont 1 dont le type réel peut ne pas être présent dans le Class-Loader.
Le type réel de l'objet référencé par value peut être du type UnTypeImplementantUneInterface, et cette classe peut ne pas être accessible au moment de la désérialisation (imaginons que ce type soit dans un plugin, et que le plugin ait été désinstallé).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 public class UneClasse { private String name; private UneInterface value; ... }
Donc, ce que je voudrais, c'est que si la désérialisation de value s'est bien passée, très bien, il garde sa valeur, sinon, on lui donne une valeur par défaut.
Ça je sais le faire avec readResolve(), dans le cas de la sérialisation binaire, implantée dans Java.
Sauf que là, je veux de la sérialisation XML avec XStream, et je n'ai pas trouvé l'équivalent.
J'ai bien trouvé la méthode registerConverter, mais je ne vois pas en quoi on peut garantir que c'est ce Converter qui sera utilisé, et pas celui par défaut.
Dans le début de la documentation, ils parlent d'une méthode changeConverter (ils donnent même un exemple)... Mais cette méthode n'existe pas lol...
Donc voilà mon problème...
Merci d'avance si vous avez des pistes![]()
Partager