Bonjour,
J'utilise XStream pour sérialiser un object que je vais nommer globalConfig.
Jusque là aucun pb. Cela me génére bien un fichier XML avec les bonne données dedans.
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 public static void saveConfig(GlobalConfig globalConfig) throws FileNotFoundException { XStream xs = new XStream(); String globalConfigFileName = Utils.getUtils().getProperty("globalConfigFile", ConfigConstant.PROPERTY_FILE); File globalConfigFile = new File(globalConfigFileName); FileOutputStream fos = new FileOutputStream(globalConfigFile); try { xs.toXML(globalConfig,fos); } catch (Exception e) { //log } finally { try { fos.close(); } catch (IOException e) { //Log } } }
Maintenant lorsque j'essaye de lire ce même fichier XML avec XStream j'ai une exception :
qui est levée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part com.thoughtworks.xstream.io.StreamException: : Read error
Mon code
Je ne comprends pas. Je récupère bien la chaine XML du fichier donc ce n'est pas un pb de path ou de droits.
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 public static GlobalConfig readConfig() throws FileNotFoundException { XStream xs = new XStream(); String filename = Utils.getUtils().getProperty("globalConfigFile", ConfigConstant.PROPERTY_FILE); FileInputStream is = new FileInputStream(filename); if (is != null) { try { //System.out.print(inputStreamToString(is)); => on voit bien le XML } catch (IOException e1) { //Log } try { return (GlobalConfig) xs.fromXML(is); // c'est ici que cela plante } catch (Exception e) { //Log } } else { throw new FileNotFoundException(); } }
Le XML est généré par XStream lui même donc je ne pense pas que ce soit un problème de parsing du XML ...
Là je n'ai plus d'idée. Si qq'un en a une je suis preneur.
Merci d'avance.
Partager