code: public void writeExternal(ObjectOutput out) throws IOException {
  		super.writeExternal(out);
  		if(linkedRequest == null) {
  			out.writeBoolean(false);
  		} else {
  			out.writeBoolean(true);
  			out.writeObject(linkedRequest);
  		}
  		out.writeBoolean(createDialog);
  		if(routingDirective != null) {
  			out.writeUTF(routingDirective.toString());
  		} else {
  			out.writeUTF("");
  		}
  		if(routingState != null) {
  			out.writeUTF(routingState.toString());
  		} else {
  			out.writeUTF("");
  		}
  		if(routingRegion != null) {
  			out.writeBoolean(true);
  			out.writeObject(routingRegion);
  		} else {
  			out.writeBoolean(false);
  		}
  		out.writeBoolean(isInitial);
  		if(logger.isDebugEnabled()) {
              logger.debug("writeExternal - isInitial=" + isInitial);
          }
  		out.writeBoolean(isFinalResponseGenerated);
  		out.writeBoolean(is1xxResponseGenerated);
  	}
docs: /*
  (non-Javadoc)
  @see java.io.Externalizable#writeExternal(java.io.ObjectOutput)