Я пытаюсь реализовать получить выход в Java, как предложено здесь: http://www-01.ibm.com/support/knowledgecenter/SSFKSJ_7.0.1/com.ibm.mq.csqzaw.doc/jm11171_.htmClient Получить Выход с IBM WebSphere MQ JMS
// This method implements the receive exit interface
public ByteBuffer channelReceiveExit(MQCXP channelExitParms,
MQCD channelDefinition,
ByteBuffer agentBuffer)
{
// Complete the body of the receive exit here
}
Я вижу, что метод выхода называется, и после документации я ожидаю agentBuffer содержать данные входящего сообщения. Но agentBuffer кажется нулевым каждый раз, поэтому я не вижу возможности повлиять на данные сообщения.
Любая подсказка будет оценена по достоинству.
UPD Я был не прав о agentBuffer всегда null, это не так. После ответа T.Rob мне удалось поймать несколько вызовов с помощью MQCXP.ExitReason = 14 (MQXR_XMIT). С одним из этих вызовов я получаю данные сообщений в буфере, и представляется возможным изменить такие данные. Но все же существует проблема с другими вызовами, имеющая тот же ExitReason, но не соответствующий какой-либо реальной передаче сообщений. Мне нужно пропустить такие звонки, но пока не знаю, как их отличить.
Любая идея, как я могу это сделать?