Using serializable classes

You can use the information and links provided here while using serializable classes.

The Server API serializable classes as well as the IBM® Security Directory Integrator serializable classes have evolved since IBM Security Directory Integrator 6.0. Thus these classes are different in IBM Security Directory Integrator 6.0 and in the current version of IBM Security Directory Integrator. Nevertheless these classes have evolved in a compatible with earlier versions way from a serialization perspective. This means that the IBM Security Directory Integrator 6.0 serializable classes can interoperate with the current version's serializable classes through the Java™ RMI engine.

The Java RMI engine determines whether serializable classes are compatible by checking the class serial version UID – if the class serial version UID of two classes are identical then the RMI engine considers these two classes compatible. The serial version UIDs of the serializable classes in IBM Security Directory Integrator can be found in "serialVersionUID for serializable classes". Since the current version's serializable classes are compatible with the IBM Security Directory Integrator 6.0 serializable classes the serial version UIDs of these classes have not changed.

"New Serializable classes/interfaces" lists classes and interfaces available in the current version of IBM Security Directory Integrator. Since these classes and interfaces are not available in IBM Security Directory Integrator 6.0 they cannot be used against an IBM Security Directory Integrator 6.0 server. The IBM Security Directory Integrator JavaDocs should be referred to for more detailed information on method signature changes of serializable classes in both releases. Methods which are not available in IBM Security Directory Integrator 6.0 cannot be used against an IBM Security Directory Integrator 6.0 server.

If the Server API client uses third party or custom user serializable classes then the best approach would be to ensure that these classes are identical on the server and on the client. If for any reason the serializable classes are different (but compatible) versions of the same class then the client still can work if both versions are set the same serialVersionUID. More information on maintaining and evolving serializable classes can be found at:

http://java.sun.com/j2se/1.5.0/docs/api/java/io/Serializable.html
http://java.sun.com/j2se/1.5.0/docs/guide/serialization/spec/serialTOC.html
http://www-03.ibm.com/developerworks/blogs/page/woolf?