public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
  id=(ActivationID)in.readObject();
  ref=null;
  String className=in.readUTF();
  if (className.equals(""))   return;
  try {
    Class<?> refClass=Class.forName(RemoteRef.packagePrefix + "." + className);
    ref=(RemoteRef)refClass.newInstance();
    ref.readExternal(in);
  }
 catch (  InstantiationException e) {
    throw new UnmarshalException("Unable to create remote reference",e);
  }
catch (  IllegalAccessException e) {
    throw new UnmarshalException("Illegal access creating remote reference");
  }
}

public void readExternal ( ObjectInput in ) throws IOException , ClassNotFoundException { id = ( ActivationID ) in . readObject ( ) ; ref = null ; String className = in . readUTF ( ) ; if ( className . equals ( "" ) ) return ; try { Class < ? > refClass = Class . forName ( RemoteRef . packagePrefix + "." + className ) ; ref = ( RemoteRef ) refClass . newInstance ( ) ; ref . readExternal ( in ) ; } catch ( InstantiationException e ) { throw new UnmarshalException ( "Unable to create remote reference" , e ) ; } catch ( IllegalAccessException e ) { throw new UnmarshalException ( "Illegal access creating remote reference" ) ; } }
read in external representation for remote ref .
