private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException {
  in.defaultReadObject();
  if (codebase == null) {
    throw new InvalidObjectException("null export codebase");
  }
  if (policy == null) {
    throw new InvalidObjectException("null policy");
  }
  if (classpath == null) {
    throw new InvalidObjectException("null import codebase");
  }
  if (implClassName == null) {
    throw new InvalidObjectException("null implementation class name");
  }
  lifeCycle=NoOpLifeCycle;
  servicePreparer=null;
  descCreated=false;
  descCreatedLock=new Object();
}

private void readObject ( ObjectInputStream in ) throws IOException , ClassNotFoundException { in . defaultReadObject ( ) ; if ( codebase == null ) { throw new InvalidObjectException ( "null export codebase" ) ; } if ( policy == null ) { throw new InvalidObjectException ( "null policy" ) ; } if ( classpath == null ) { throw new InvalidObjectException ( "null import codebase" ) ; } if ( implClassName == null ) { throw new InvalidObjectException ( "null implementation class name" ) ; } lifeCycle = NoOpLifeCycle ; servicePreparer = null ; descCreated = false ; descCreatedLock = new Object ( ) ; }
reads the default serializable field values for this object and resets the tranisient fields to legal values . also , verifies that the deserialized values are legal .
