code: @Override
      public void writeBoolean(boolean value) throws JMSException {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(this, tc, "writeBoolean", value);
  
          // Check if the producer has promised not to modify the payload after it's been set
          checkProducerPromise("writeBoolean(boolean)", "JmsBytesMessageImpl.writeBoolean#1");
  
          // Check that we are in write mode. Need to do this here (as well as in
          // writeByte) otherwise we get a misleading error message.
          checkBodyWriteable("writeBoolean");
  
          // Convert the boolean to a 1-byte value as described above.
          writeByte((byte) (value ? 1 : 0));
  
          // Invalidate the cached toString object.
          cachedBytesToString = null;
  
          // Ensure that the new data gets exported when the time comes.
          bodySetInJsMsg = false;
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(this, tc, "writeBoolean");
      }
docs: Write a <code>boolean</code> to the stream message as a 1-byte value.
  The value <code>true</code> is written out as the value
  <code>(byte)1</code>; the value <code>false</code> is written out as
  the value <code>(byte)0</code>.
  
  @param value the <code>boolean</code> value to be written.
  
  @exception MessageNotWriteableException if message in read-only mode.
  @exception JMSException if JMS fails to write message due to
  some internal JMS error.