Bonjour,
Je travaille sur un projet d'annuaire téléphonique multi-utilisateurs.

voici mes codes de sérialisation et de désérialisation:

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
public class SerialiserUtilisateur 
{
	public void serialiser(UtilisateurStandard utilisateur) throws IOException
	{
		FileOutputStream fichier = new FileOutputStream("utilisateur.ser");
		ObjectOutputStream oos = new ObjectOutputStream(fichier);
		oos.writeObject(utilisateur);
		oos.flush();
		oos.close();
	}
 
	public UtilisateurStandard deserialiser() throws IOException, ClassNotFoundException
	{
		UtilisateurStandard utilisateur;
		try
		{
			FileInputStream fichier = new FileInputStream("utilisateur.ser");
			ObjectInputStream ois = new ObjectInputStream(fichier);
			utilisateur = (UtilisateurStandard)ois.readObject();
			return utilisateur;
		}
		catch (IOException e)
		{
			e.printStackTrace();
		}
		catch (ClassNotFoundException e)
		{
			e.printStackTrace();
		}
		return null;
 
 
	}
}
la sérialisation fonctionne bien, mais la désérialisation m'envoie l'erreur suivante:

java.io.InvalidClassException: utilisateurs.UtilisateurStandard; utilisateurs.UtilisateurStandard; no valid constructor
at java.io.ObjectStreamClass.checkDeserialize(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at utilisateurs.DeserialiserUtilisateur.deserialiser(DeserialiserUtilisateur.java:16)
at main.testContact.main(testContact.java:32)

une idée pour m'aider?

Merci d'avance!