From: Alexandre Oliva (oliva@dcc.unicamp.br)
Date: Tue Dec 01 1998 - 12:01:45 EST
Hi!
Nadia could not find again that other serialization problem I
mentioned, but Alexandre Braga found another problem. I'll be
overloaded till next week, and then I hope I'll be able to get back to
software development :-)
Hope this helps...
-- Alexandre Oliva http://www.dcc.unicamp.br/~oliva aoliva@{acm.org} oliva@{dcc.unicamp.br,gnu.org,egcs.cygnus.com,samba.org} Universidade Estadual de Campinas, SP, Brasil ------- Start of forwarded message ------- Date: Tue, 1 Dec 1998 14:47:38 -0200 ( ) From: ALEXANDRE MELO BRAGA <972314@dcc.unicamp.br> To: Alexandre Oliva <oliva@dcc.unicamp.br> Subject: bug do kaffe Message-ID: <Pine.GSO.4.05.9812011440450.16671-100000@iguacu.dcc.unicamp.br> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII/* This program tries to serialize and to unserialize a string, a byte array and a Byte. It works well only for the first case. Class Serializer is just a wrapper for the serialization and deserialization operations. */
import java.io.*;
class Serializer {
public static byte[] serialize(Serializable object){ ByteArrayOutputStream bArrayOut = null; try{ bArrayOut = new ByteArrayOutputStream(); ObjectOutput objOut = new ObjectOutputStream(bArrayOut); objOut.writeObject(object); objOut.flush(); objOut.close(); } catch (Exception e){ e.printStackTrace();} return(bArrayOut.toByteArray()); }
public static Serializable unserialize(byte[] serializedObject){ Serializable object = null; try{ ObjectInput objIn = new ObjectInputStream(new ByteArrayInputStream(serializedObject)); object = (Serializable) objIn.readObject(); objIn.close(); } catch (Exception e){ e.printStackTrace();} return(object); } }
public class BugFoundout{ public static void main(String[] argv){ //this case works well! System.out.println(Serializer.unserialize(Serializer.serialize(new String("this is a test")))); //these two do not work! System.out.println(Serializer.unserialize(Serializer.serialize(new byte[]{(byte)0}))); System.out.println(Serializer.unserialize(Serializer.serialize(new Byte((byte)0)))); } }
------- End of forwarded message -------
This archive was generated by hypermail 2b29 : Sat Sep 23 2000 - 19:57:04 EDT