Author |
Message
|
bobbee |
Posted: Wed Jan 12, 2011 11:17 am Post subject: RFH2 Header Aded to message tree resulting in 2142 |
|
|
 Knight
Joined: 20 Sep 2001 Posts: 545 Location: Tampa
|
Adding a RFH2 heaader to a plain MQ text message sent into a MF with RFHUTIL with the following ESQL in a compute node receives a 2142 when it hits the MQOutput node. The only strange thing I have noticed is I do not get out of the Compute Node the format field set to the RFHUTIL value in the ESQL, When the message is sent in with RFHUTIL with a RFH@ header this works. This is WMB7 and MQ 7.
Trace output '${Root} after the Comput node and the exception follows.
***********************************************************
ESQL
***********************************************************
BEGIN
-- CALL CopyMessageHeaders();
CALL CopyEntireMessage();
SET OutputRoot.MQMD.Format = MQFMT_RF_HEADER_2;
CREATE NEXTSIBLING OF OutputRoot.MQMD TYPE NameValue NAME 'MQRFH2';
SET OutputRoot.MQRFH2.(MQRFH2.Field)StrucId = MQRFH_STRUC_ID;
SET OutputRoot.MQRFH2.(MQRFH2.Field)Version = MQRFH_VERSION_2;
SET OutputRoot.MQRFH2.(MQRFH2.Field)Struclength = MQRFH_STRUC_LENGTH_FIXED_2;
SET OutputRoot.MQRFH2.(MQRFH2.Field)Encoding = MQENC_NATIVE;
SET OutputRoot.MQRFH2.(MQRFH2.Field)CodedCharSetId = 437;
SET OutputRoot.MQRFH2.(MQRFH2.Field)Format = MQFMT_STRING;
SET OutputRoot.MQRFH2.(MQRFH2.Field)Flags = MQRFH_NONE;
SET OutputRoot.MQRFH2.(MQRFH2.Field)NameValueCCSID = 1208;
-- set OutputRoot.MQRFH2.usr.BOBBEE = 'HELLO';
RETURN TRUE;
END;
*************************************************************
TRACE
*************************************************************
( ['MQROOT' : 0xd618e0]
(0x01000000:Name ):Properties = ( ['MQPROPERTYPARSER' : 0x147e4058]
(0x03000000:NameValue):MessageSet = '' (CHARACTER)
(0x03000000:NameValue):MessageType = '' (CHARACTER)
(0x03000000:NameValue):MessageFormat = '' (CHARACTER)
(0x03000000:NameValue):Encoding = 546 (INTEGER)
(0x03000000:NameValue):CodedCharSetId = 437 (INTEGER)
(0x03000000:NameValue):Transactional = TRUE (BOOLEAN)
(0x03000000:NameValue):Persistence = FALSE (BOOLEAN)
(0x03000000:NameValue):CreationTime = GMTTIMESTAMP '2011-01-12 19:11:28.040' (GMTTIMESTAMP)
(0x03000000:NameValue):ExpirationTime = -1 (INTEGER)
(0x03000000:NameValue):Priority = 0 (INTEGER)
(0x03000000:NameValue):ReplyIdentifier = X'000000000000000000000000000000000000000000000000' (BLOB)
(0x03000000:NameValue):ReplyProtocol = 'MQ' (CHARACTER)
(0x03000000:NameValue):Topic = NULL
(0x03000000:NameValue):ContentType = '' (CHARACTER)
(0x03000000:NameValue):IdentitySourceType = '' (CHARACTER)
(0x03000000:NameValue):IdentitySourceToken = '' (CHARACTER)
(0x03000000:NameValue):IdentitySourcePassword = '' (CHARACTER)
(0x03000000:NameValue):IdentitySourceIssuedBy = '' (CHARACTER)
(0x03000000:NameValue):IdentityMappedType = '' (CHARACTER)
(0x03000000:NameValue):IdentityMappedToken = '' (CHARACTER)
(0x03000000:NameValue):IdentityMappedPassword = '' (CHARACTER)
(0x03000000:NameValue):IdentityMappedIssuedBy = '' (CHARACTER)
)
(0x01000000:Name ):MQMD = ( ['MQHMD' : 0xd71910]
(0x03000000:NameValue):SourceQueue = 'BOBBEE_IN' (CHARACTER)
(0x03000000:NameValue):Transactional = TRUE (BOOLEAN)
(0x03000000:NameValue):Encoding = 546 (INTEGER)
(0x03000000:NameValue):CodedCharSetId = 437 (INTEGER)
(0x03000000:NameValue):Format = 'MQHMD' (CHARACTER)
(0x03000000:NameValue):Version = 2 (INTEGER)
(0x03000000:NameValue):Report = 0 (INTEGER)
(0x03000000:NameValue):MsgType = 8 (INTEGER)
(0x03000000:NameValue):Expiry = -1 (INTEGER)
(0x03000000:NameValue):Feedback = 0 (INTEGER)
(0x03000000:NameValue):Priority = 0 (INTEGER)
(0x03000000:NameValue):Persistence = 0 (INTEGER)
(0x03000000:NameValue):MsgId = X'414d51204d4237514d47522020202020e2b52d4d20006107' (BLOB)
(0x03000000:NameValue):CorrelId = X'000000000000000000000000000000000000000000000000' (BLOB)
(0x03000000:NameValue):BackoutCount = 0 (INTEGER)
(0x03000000:NameValue):ReplyToQ = ' ' (CHARACTER)
(0x03000000:NameValue):ReplyToQMgr = 'MB7QMGR ' (CHARACTER)
(0x03000000:NameValue):UserIdentifier = 'rkbroder ' (CHARACTER)
(0x03000000:NameValue):AccountingToken = X'16010515000000fe927a36102d48fd3bba9128f401000000000000000000000b' (BLOB)
(0x03000000:NameValue):ApplIdentityData = ' ' (CHARACTER)
(0x03000000:NameValue):PutApplType = 11 (INTEGER)
(0x03000000:NameValue):PutApplName = 'pport Packs\IH03\rfhutil.exe' (CHARACTER)
(0x03000000:NameValue):PutDate = DATE '2011-01-12' (DATE)
(0x03000000:NameValue):PutTime = GMTTIME '19:11:28.040' (GMTTIME)
(0x03000000:NameValue):ApplOriginData = ' ' (CHARACTER)
(0x03000000:NameValue):GroupId = X'000000000000000000000000000000000000000000000000' (BLOB)
(0x03000000:NameValue):MsgSeqNumber = 1 (INTEGER)
(0x03000000:NameValue):Offset = 0 (INTEGER)
(0x03000000:NameValue):MsgFlags = 0 (INTEGER)
(0x03000000:NameValue):OriginalLength = -1 (INTEGER)
)
(0x03000000:NameValue):MQRFH2 = NULL
( ['MQHMD' : 0xd71910]
(0x03000000:NameValue):StrucId = 'RFH ' (CHARACTER)
(0x03000000:NameValue):Version = 2 (INTEGER)
(0x03000000:NameValue):Struclength = 36 (INTEGER)
(0x03000000:NameValue):Encoding = 546 (INTEGER)
(0x03000000:NameValue):CodedCharSetId = 437 (INTEGER)
(0x03000000:NameValue):Format = 'MQSTR ' (CHARACTER)
(0x03000000:NameValue):Flags = 0 (INTEGER)
(0x03000000:NameValue):NameValueCCSID = 1208 (INTEGER)
)
(0x01000000:Name ):BLOB = ( ['none' : 0xd7f798]
(0x03000000:NameValue):UnknownParserName = '' (CHARACTER)
(0x03000000:NameValue):BLOB = X'54686973206973206d792064617461' (BLOB)
)
)
*************************************************************
Exception
*************************************************************
Message
LocalEnvironment
Environment
ExceptionList
RecoverableException
File F:\\build\\S700_P\\src\\DataFlowEngine\\ImbDataFlowNode.cpp
Line 1073
Function ImbDataFlowNode::createExceptionList
Type ComIbmMQInputNode
Name PROPERTY_TEST_MF#FCMComposite_1_1
Label PROPERTY_TEST_MF.BOBBEE_IN
Catalog BIPmsgs
Severity 3
Number 2230
Text Node throwing exception
RecoverableException
File F:\\build\\S700_P\\src\\DataFlowEngine\\ImbMqOutputNode.cpp
Line 905
Function ImbMqOutputNode::evaluate
Type ComIbmMQOutputNode
Name PROPERTY_TEST_MF#FCMComposite_1_2
Label PROPERTY_TEST_MF.BOBBEE_OUT
Catalog BIPmsgs
Severity 3
Number 2230
Text Caught exception and rethrowing
MessageException
File F:\\build\\S700_P\\src\\DataFlowEngine\\ImbMqOutputNode.cpp
Line 2186
Function ImbMqOutputNode::putMessage
Type ComIbmMQOutputNode
Name PROPERTY_TEST_MF#FCMComposite_1_2
Label PROPERTY_TEST_MF.BOBBEE_OUT
Catalog BIPmsgs
Severity 3
Number 2667
Text Failed to put message
Insert
Type 2
Text -1
Insert
Type 5
Text MQW102
Insert
Type 2
Text 2142
Insert
Type 5
Text
Insert
Type 5
Text
Insert
Type 5
Text BOBBEE_OUT |
|
Back to top |
|
 |
smdavies99 |
Posted: Wed Jan 12, 2011 11:29 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
What does the result of the collowing command say?
That should be the first thing you do. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
bobbee |
Posted: Wed Jan 12, 2011 11:33 am Post subject: |
|
|
 Knight
Joined: 20 Sep 2001 Posts: 545 Location: Tampa
|
|
Back to top |
|
 |
Vitor |
Posted: Wed Jan 12, 2011 12:02 pm Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
bobbee wrote: |
Been there done that |
A man of your experience, I would hope so.
Whenever I've added an RFH2 in ESQL, I've always explicitly associated a parser using the DOMAIN clause, something like:
Code: |
CREATE NEXTSIBLING OF OutputRoot.MQMD DOMAIN('MQRFH2') |
Not sure if that is conceptually any different to what you're doing. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
bobbee |
Posted: Wed Jan 12, 2011 12:19 pm Post subject: |
|
|
 Knight
Joined: 20 Sep 2001 Posts: 545 Location: Tampa
|
Yes Victor, I found someone burning the midnight oil in Hursley and that was what I was looking for. Funny, someone gave me a code snip from something they said they have working. It did not have DOMAIN in the create. That was what i was trying to get working. Maybe they have an undocumented BUG!!!! hey hey..................thanks!!!!!!!!!!!!!!!! |
|
Back to top |
|
 |
Vitor |
Posted: Wed Jan 12, 2011 12:38 pm Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
bobbee wrote: |
Maybe they have an undocumented BUG!!!! |
Maybe.
I think it was P. T. Barnum who said,"I don't care what they say about me as long as they spell my name right".
Oh well.  _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
fjb_saper |
Posted: Wed Jan 12, 2011 4:30 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
bobee wrote: |
Maybe they have an undocumented BUG!!!! hey hey..................thanks!!!!!!!!!!!!!!!! |
If my memory serves me well there is a documented one involving MQ V7 the mainframe to distributed and the RFH2 header... Worth checking out...  _________________ MQ & Broker admin |
|
Back to top |
|
 |
mvic |
Posted: Wed Jan 12, 2011 5:23 pm Post subject: |
|
|
 Jedi
Joined: 09 Mar 2004 Posts: 2080
|
bobee wrote: |
Format = 'MQHMD' |
I don't understand this bit.
It suggests the header following it is of type MQHMD.
But the later part of the dump suggests the next header is really an MQHRF2, not an MQHMD.
Maybe I misunderstood the dump, though. |
|
Back to top |
|
 |
|