Using deserialization

The following example illustrates how to deserialize an object from a local file. The serialized object is an instance of a class that resides on a server and does not exist in the CLASSPATH.

SybResultSet.getObject( ) makes use of DynamicObjectInputStream, which is a subclass of ObjectInputStream that loads a class definition from DynamicClassLoader, rather than the default system (“boot”) class loader.

// Make a stream on the file containing the 
//serialized object.
FileInputStream fileStream = new FileInputStream("serFile");
// Make a "deserializer" on it. Notice that, apart 
//from the additional parameter, this is the same 
//as ObjectInputStreamDynamicObjectInputStream 
stream = new DynamicObjectInputStream(fileStream, loader);
// As the object is deserialized, its class is 
//retrieved through the loader from our server.
Object obj = stream.readObject();stream.close();