bodyReadOnly = in.readBoolean();
   public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException   {      super.readExternal(in);            if (log.isTraceEnabled()) { log.trace("in readExternal"); }            bodyReadOnly = in.readBoolean();            byte type = in.readByte();            if (log.isTraceEnabled()) { log.trace("type is:" + type); }      if (type == NULL)      {         payload = null;      }      else      {         payload = in.readUTF();         /*                    TODO                    Do we care about this any more?          Do we support JDK 1.3.x ???                    // apply workaround for string > 64K bug in jdk's 1.3.*          // Read the no. of chunks this message is split into, allocate          // a StringBuffer that can hold all chunks, read the chunks          // into the buffer and set 'content' accordingly          int chunksToRead = in.readInt();          int bufferSize = chunkSize * chunksToRead;          // special handling for single chunk          if (chunksToRead == 1)          {          // The text size is likely to be much smaller than the chunkSize          // so set bufferSize to the min of the input stream available          // and the maximum buffer size. Since the input stream          // available() can be <= 0 we check for that and default to          // a small msg size of 256 bytes.          int inSize = in.available();          if (inSize <= 0)          {          inSize = 256;          }          bufferSize = Math.min(inSize, bufferSize);          }          // read off all of the chunks          StringBuffer sb = new StringBuffer(bufferSize);          for (int i = 0; i < chunksToRead; i++)          {          sb.append(in.readUTF());          }          content = sb.toString();                    */      }   }