Author |
Message
|
martinstephenson |
Posted: Wed Apr 19, 2006 9:59 am Post subject: Problem creating a message from Scratch |
|
|
Newbie
Joined: 17 Jun 2005 Posts: 7
|
This is a simplified version of the error I'm seeing:
I am creating a message from Scratch - problem is when it goes onto an MQOutput node it dies, unless I set the MQOutput Message Context to "Set All".
So - my question is this - if I can't set the MQOutput To "Set All" (It's at the default "Pass All") what is are the minimum amount of headers I need to set ?
I have set
Properties.MessageSet
Properties.MessageType
Properties.MessageFormat
and
MQMD.Type
MQMD.Version
But it still doesn't work - are there other "Must Have" Properties and/or MQMD Fields ? |
|
Back to top |
|
 |
kimbert |
Posted: Wed Apr 19, 2006 1:00 pm Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
That's not a problem description. Tell us how it 'dies' and quote any error messages |
|
Back to top |
|
 |
martinstephenson |
Posted: Thu Apr 20, 2006 2:25 am Post subject: |
|
|
Newbie
Joined: 17 Jun 2005 Posts: 7
|
OK - here's what's in the Event Log:
Code: |
( brkrpmp.default ) Unable to write message to queue 'HEARTBEAT' on queue manager ''. MQPUT failed: MQCC=2; MQRC=2097; message flow node 'EventProcessingFlow.EventProcessingWrapper.MQOutput'.
The message flow node 'EventProcessingFlow.EventProcessingWrapper.MQOutput' was unable to write a WebSphere Business Integration message as it failed to put it to the queue 'HEARTBEAT' belonging to queue manager ''. The completion and reason code from the MQPUT operation are as displayed.
Check the WebSphere Business Integration completion and reason codes in the WebSphere Business Integration Application Programming Reference manual to establish the cause of the error, taking any appropriate action. It may be necessary to restart the message broker after you have performed this recovery action. |
and
Code: |
( brkrpmp.default ) Error detected whilst processing a message in node 'EventProcessingFlow.EventProcessingWrapper.MQOutput'.
The message broker detected an error whilst processing a message in node 'EventProcessingFlow.EventProcessingWrapper.MQOutput'. An exception has been thrown to cut short the processing of the message.
See the following messages for details of the error. |
This does not happen if I set the MQNode's Message Context to "Set All" - with "Set All" the message is correctly written out to the output Queue |
|
Back to top |
|
 |
kimbert |
Posted: Thu Apr 20, 2006 2:45 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
This is what MQRC 2097 says: ( I found it using Google )
Quote: |
2097 MQRC_CONTEXT_HANDLE_ERROR X'831'
Queue handle referred
to does not save
context.
On an MQPUT or MQPUT1
call,
MQPMO_PASS_IDENTITY_
CONTEXT or
MQPMO_PASS_ALL_CONTEXT
was specified, but the
handle specified in
the Context field of
the PutMsgOpts
parameter is either
not a valid queue
handle, or it is a
valid queue handle but
the queue was not
opened with
MQOO_SAVE_ALL_CONTEXT.
Corrective action:
Specify
MQOO_SAVE_ALL_CONTEXT
when the queue
referred to is opened. |
I'm sure one of the MQ experts can point you in the right direction. |
|
Back to top |
|
 |
fschofer |
Posted: Thu Apr 20, 2006 3:09 am Post subject: |
|
|
 Knight
Joined: 02 Jul 2001 Posts: 524 Location: Mainz, Germany
|
Hi,
there is now field called "Type" within the MQMD
http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/topic/com.ibm.mq.csqzak.doc/mqmd.htm
Here is a sample of Properties and MQMD fields which are the result of a incoming MQ message.
I think you do not have to create all of these fields especially not MQMD.SourceQueue and MQMD.Transactional which are no true MQMD field but are added by the broker.
Code: |
0x01000000):Properties = (
(0x03000000):MessageSet = 'KMV5H6G002001'
(0x03000000):MessageType = 'msg_REQUEST'
(0x03000000):MessageFormat = 'CWF1'
(0x03000000):Encoding = 785
(0x03000000):CodedCharSetId = 500
(0x03000000):Transactional = TRUE
(0x03000000):Persistence = FALSE
(0x03000000):CreationTime = GMTTIMESTAMP '2006-04-19 15:08:30.820'
(0x03000000):ExpirationTime = -1
(0x03000000):Priority = 0
(0x03000000):ReplyIdentifier = X'000000000000000000000000000000000000000000000000'
(0x03000000):ReplyProtocol = 'MQ'
(0x03000000):Topic = NULL
(0x03000000):ContentType = ''
)
(0x01000000):MQMD = (
(0x03000000):SourceQueue = 'Request.queue'
(0x03000000):Transactional = TRUE
(0x03000000):Encoding = 785
(0x03000000):CodedCharSetId = 500
(0x03000000):Format = ' '
(0x03000000):Version = 2
(0x03000000):Report = 0
(0x03000000):MsgType = 8
(0x03000000):Expiry = -1
(0x03000000):Feedback = 0
(0x03000000):Priority = 0
(0x03000000):Persistence = 0
(0x03000000):MsgId = X'414d51205742524b365f44454641554cfa4746442000831c'
(0x03000000):CorrelId = X'000000000000000000000000000000000000000000000000'
(0x03000000):BackoutCount = 0
(0x03000000):ReplyToQ = ' '
(0x03000000):ReplyToQMgr = 'WBRK6_DEFAULT_QUEUE_MANAGER '
(0x03000000):UserIdentifier = 'name '
(0x03000000):AccountingToken = X'16010515000000a837d66519525f1243170a32eb03000000000000000000000b'
(0x03000000):ApplIdentityData = ' '
(0x03000000):PutApplType = 11
(0x03000000):PutApplName = 'gs\name\Desktop\rfhutil.exe'
(0x03000000):PutDate = DATE '2006-04-19'
(0x03000000):PutTime = GMTTIME '15:08:30.820'
(0x03000000):ApplOriginData = ' '
(0x03000000):GroupId = X'000000000000000000000000000000000000000000000000'
(0x03000000):MsgSeqNumber = 1
(0x03000000):Offset = 0
(0x03000000):MsgFlags = 0
(0x03000000):OriginalLength = -1 |
Greetings
Frank |
|
Back to top |
|
 |
|