code: protected void sendNoMessageToClient() {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(this, tc, "sendNoMessageToClient");
  
          // Ensure that we set the flag that we have done all we can
          setCurrentlyDoingReceiveWithWait(false);
          setComplete(true);
  
          CommsServerByteBuffer buffer = poolManager.allocate();
          int msgLen = -1;
          ConversationState convState = (ConversationState) conversation.getAttachment();
  
          buffer.putShort(convState.getConnectionObjectId());
          if (!mainConsumer.getUsingConnectionReceive())
              buffer.putShort(mainConsumer.getConsumerSessionId());
          buffer.putLong(msgLen);
  
          int seg = JFapChannelConstants.SEG_RECEIVE_SESS_MSG_R;
          if (mainConsumer.getUsingConnectionReceive()) {
              seg = JFapChannelConstants.SEG_RECEIVE_CONN_MSG_R;
          }
  
          try {
              conversation.send(buffer,
                                seg,
                                requestNumber,
                                JFapChannelConstants.PRIORITY_MEDIUM,
                                true,
                                ThrottlingPolicy.BLOCK_THREAD,
                                null);
          } catch (SIException c) {
              FFDCFilter.processException(c, CLASS_NAME + ".sendNoMessageToClient",
                                          CommsConstants.CATSYNCASYNCHREADER_SEND_NO_MSG_01, this);
  
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                  SibTr.debug(tc, c.getMessage(), c);
  
              SibTr.error(tc, "COMMUNICATION_ERROR_SICO2015", c);
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(this, tc, "sendNoMessageToClient");
      }
docs: This method will send a message to the client informing it that
  no message was received.