Bonjours,

Nous utilisons une sérialisation automatique a partir de l'API XStream.

Nous avons donc notre plugin (eclispe) qui sérialise et dé-sérialise automatiquement nos objets.

Maintenant, j'ai ajouté un point d'extension, qui rajoute des objets en plus. Le problème est qu'a la dé-sérialisation, il ne semble plus connaitre les objets qui sont issus du plugin.

Je souhaiterais bien lui ajouter les classes qui ne connaient pas, mais je ne sais pas ou les ajouter.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
	public static List<Resource> deserializeObject(final String xmlFilePath) {
		List<Resource> deserializedObject = null;
 
		try {
			// Instanciation de la classe XStream
			XStream xstream = new XStream(new DomDriver(ENCODAGE));
			ClassLoader classLoader = Activator.class.getClassLoader();
			xstream.setClassLoader(classLoader);
 
			// Redirection du fichier vers un flux d'entrée fichier
			FileInputStream fis = new FileInputStream(new File(xmlFilePath));
 
			try {
				// Désérialisation du fichier vers un nouvel objet
				deserializedObject = (List<Resource>) xstream.fromXML(fis);
			} finally {
				// On s'assure de fermer le flux quoi qu'il arrive
				fis.close();
				fis = null;
				System.gc();
			}
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException ioe) {
			ioe.printStackTrace();
		}
		return deserializedObject;
	}
Sur mon gestionnaire de point d'extension, j'ai ajouté la méthode qui parcours toutes les extensions et qui récupère les classes utiles.

Mais maintenant, j'en fait quoi ?

Merci d'avance.