public static Serializable deserialize(Serializable kh) throws IOException, ClassNotFoundException {
        if (kh == null)
        {
            return null;
        }
        if (!(kh instanceof KeyHelper))
        {
            return kh;

        }
        KeyHelper ivKh = (KeyHelper) kh;
        ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(ivKh.vBytes);
        ObjectInputStream objectInputStream = new CCLObjectInputStream(byteArrayInputStream);
        Serializable result = (Serializable) objectInputStream.readObject();
        objectInputStream.close(); // findbugs
        return result;
    }
public static Serializable deserialize ( Serializable kh ) throws IOException , ClassNotFoundException { if ( kh == null ) { return null ; } if ( ! ( kh instanceof KeyHelper ) ) { return kh ; } KeyHelper ivKh = ( KeyHelper ) kh ; ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream ( ivKh . vBytes ) ; ObjectInputStream objectInputStream = new CCLObjectInputStream ( byteArrayInputStream ) ; Serializable result = ( Serializable ) objectInputStream . readObject ( ) ; objectInputStream . close ( ) ; return result ; }
deserialize the Object reference corresponding to a primary key for a Handle to Rel. 3.5,4.0 Entity Bean.
This method is called from the readResolve

@param kh - Serializable KeyHelper to be converted back to a primary key.

@return Serializable The deserialized primary key.

@exception java.io.IOException - The Key could not be deserialized
because of a system-level failure.
@exception ClassNotFoundException - class not found during readObject
this shouldn't happen as we are using the context class loader for the
CCLObjectInputStream, which should allow us to find the key, stub, and remote classes