Hi all,
I am trying to get the COD reports for Segmented messages but the
report is going to dead letter queue.
Please find below the code I am using to send the segmented message

---------
for(int i=0; i< numSegments; i++)
{
MQMessage fileActPayLoadMessage = new MQMessage();
fileActPayLoadMessage.report = reportOpts;
fileActPayLoadMessage.replyToQueueName =
"EU.ISSC.COA.CLIENT.RESP";
fileActPayLoadMessage.replyToQueueManagerName = "EUISSC2Q";
fileActPayLoadMessage.correlationId = (Math.random()
+"").getBytes();
// fileActPayLoadMessage.correlationId =
"1234554".getBytes();
fileActPayLoadMessage.format = MQC.MQFMT_NONE;
int segmentSize;
MQPutMessageOptions l_putMsgOptions = new
MQPutMessageOptions();
l_putMsgOptions.options = MQC.MQPMO_SYNCPOINT;
l_putMsgOptions.options = MQC.MQPMO_SET_IDENTITY_CONTEXT |
MQC.MQPMO_LOGICAL_ORDER;
if (i == numSegments-1)
{
fileActPayLoadMessage.messageFlags =
MQC.MQMF_SEGMENTATION_ALLOWED | MQC.MQMF_LAST_SEGMENT ;
segmentSize = (int)(fileSize - (i * segmentationSize));
}
else
{
fileActPayLoadMessage.messageFlags =
MQC.MQMF_SEGMENTATION_ALLOWED | MQC.MQMF_SEGMENT ;
segmentSize = (int)segmentationSize;
}
byte[] buffer = new byte[segmentSize];
long bytes_read = in.read(buffer);
fileActPayLoadMessage.write(buffer);
myQueue.put(fileActPayLoadMessage, l_putMsgOptions);

System.out.println(getMessageID(fileActPayLoadMess age.correlationId));
// System.out.println(fileActPayLoadMessage.messageId );
}

-----

COD seems to work when the message is not segmented.
Also I am able to get COA for segmented messages.

Can any one please guide what is wrong in getting the COD for
Segmented Messages....
Appreciate the guidance...

Regards
Ashutosh