Non riesco a serializzare un oggetto

di il
2 risposte

Non riesco a serializzare un oggetto

Salve.
Per favore aiutatemi.
Non riesco a serializzare un oggetto. Il programma si blocca generando un'eccezione.
Vi scrivo di seguito il codice da me scritto per la serializzazione di un array contenente oggetti di una classe.

				if (condizioneUscitaProgramma==false) {
					// Inizio del ciclo DO... WHILE per la verifica della scelta inserite dall'utente relativa alla richiesta del programma di svolgere una nuova operazione.
					do {
						condizioneCicloDoWhile = true;
						stampa("\tVuoi svolgere un'altra operazione (S) o (N)?                      ");
						stringaInput = tastiera.readLine();
						if (esci(stringaInput)==true) {
							condizioneCicloDoWhile = false;
							condizioneUscitaProgramma = true;
							stampa("\tTERMINE DELL'ESECUZIONE DEL PROGRAMMA.\n");
						} else if (riavvia(stringaInput)==true) {
							condizioneCicloDoWhile = false;
							condizioneUscitaProgramma = true;
							condizioneRiavvioProgramma = true;
							stampa("\tRIAVVIO DEL PROGRAMMA IN CORSO ...\n");
						} else if (eliminaSpazi(stringaInput).length()==0)
							stampa("\tATTENZIONE: non hai scelto alcuna opzione.\n");
						else {
							stringaInput = eliminaSpazi(stringaInput);
							if (stringaInput.length()>1)
								stampa("\tATTENZIONE: hai scelto un\'opzione non valida (l\'opzione è formata solo da una lettera).\n");
							else {
								stringaInput = stringaInput.toUpperCase();
								sceltaUtente = stringaInput.charAt(0);
								if ((sceltaUtente!='S')&&(sceltaUtente!='N'))
									stampa("\tATTENZIONE: hai scelto un\'opzione non in elenco (le opzioni disponibili sono S e N).\n");
								else if (sceltaUtente=='S') {
									condizioneCicloDoWhile = false;
									condizioneIterazioneMenuProgramma = true;
								} else {
									condizioneCicloDoWhile = false;
	//								try {
										FileOutputStream rubricaTelefonica = new FileOutputStream("ubricaTelefonica.dat", true);
										ObjectOutputStream flussoOggettoUscita = new ObjectOutputStream(rubricaTelefonica);
										for (int i = 0; i<contatti.size(); i++)
											flussoOggettoUscita.writeObject(contatti.get(i));
										flussoOggettoUscita.close();
	//								} catch (IOException eccezzione1) {
	//									stampa("\n\tATTENZIONE: si è verificato un errore durante la serializzazione dell'array dinamico \'contatti\'.\n\n");
	//								}
								}
							}
						}
					} while (condizioneCicloDoWhile==true);
				}
Non riesco a serializzare ne l'array dinamico (ArrayList), ne i singoli oggetti contenuti al suo interno.
Vi allego un immagine con la descrizione dell'eccezione generata.
[img]
http://www.lascuolacomehobby.it/Disegni/Immagine.jp

A questo indirizzo potete trovare il listato completo del programma.

Per favore aiutatemi. Sono rimasto bloccato su questo programmino.

2 Risposte

  • Re: Non riesco a serializzare un oggetto

    Ho trovato l'errore. Dovevo implementare come Serializable la classe di cui creavo l'oggetto e non la classe con il metodo main().
    Grazie comunque.
  • Re: Non riesco a serializzare un oggetto

    Salve.
    Ho quasi finito il mio programmino.
    Che ne pensate?

    Datemi un'opinione per favore.
    Questa è la mia prima applicazione console con OUTPUT DINAMICO, dove salvo i dati serializzando un array dinamico.
    Secondo voi ho qualche speranza di trovare impiego come programmatore o me ne devo rimanere a lavare i piatti per tutta la vita?
    Ditemi la verità, per favore.

    Una volta ho trovato un ragazzo che mi aveva presentato un mio amico. Lui era stato appena assunto come programmatore Junior, e mi aveva detto che come prova gli avevano chiesto di stendere un algoritmo per la ricerca del valore massimo e del valore minimo in un vettore (array).
    E perché a me non offrono neanche un colloquio? Questo è il punto. PERCHÈ?
    Io so fare cose più complesse che trovare il valore massimo e minimo in un vettore.

    Ciao.
Devi accedere o registrarti per scrivere nel forum
2 risposte