Bonjour ou bonsoir,
Je suis nouveau et débutant, et j'ai un projet à faire en java, mais je bloque un peu sur la sérialisation en XML.
J'aimerais sérialiser en xml de données de classes que j'ai créé, or je n'arrive pas à trouver mon erreur, mon code sérialise les types de donnée simple (Int String, Double) mais dès que je passe à une classe que j'ai créé, j'ai l'exceptionmon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part java.lang.InstantiationException
voilà, mon problème est certainement trivial mais je bute dessus.
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75 import java.io.*; import java.beans.XMLEncoder; public class XMLtest{ Obstacle cube=new Obstacle(500,600,400,500); //Double cucu=new Double(20.3); //String cute=new String("okokok"); //DInt dd=new DInt(128,64); public XMLtest() { try { XMLEncoder e = new XMLEncoder(new BufferedOutputStream(new FileOutputStream("Test.xml"))); e.writeObject(cube); e.close(); } catch(Exception e) { System.out.println(e.getMessage()); } } public class DInt implements Serializable{ public int a,b; public DInt(){a=b=0;} public DInt(int x){a=b=x;} public DInt(int x,int y){a=x;b=y;} public DInt(DInt desEntiers){a=desEntiers.a;b=desEntiers.b;} } //classe Obstacle public class Obstacle implements Serializable{ //x1 : extrémité gauche //x2 : extrémité droite //y1 : extrémité haut //y2 ; extrémité bas public int x1,x2,y1,y2; public Obstacle(int x1 , int x2, int y1, int y2) { this.x1=x1; this.x2=x2; this.y1=y1; this.y2=y2; } public Obstacle(Obstacle obs2) { x1=obs2.x1;x2=obs2.x2;y1=obs2.y1;y2=obs2.y2; } int getX1(){return x1;} int getX2(){return x2;} int getY1(){return y1;} int getY2(){return y2;} int getX(){return x1;} int getY(){return y1;} int getWidth(){return(x1-x2);} int getHeight(){return(y2-y1);} }//fin définition classe Obstacle public static void main(String[] args) { XMLtest test=new XMLtest(); } }
La classe Obstacle est une classe que j'ai déjà utilisé pour un autre programme et qui fonctionne.
Merci d'avance![]()
Partager