Author |
Message
|
Missam |
Posted: Tue Jan 13, 2004 2:15 pm Post subject: Strange behavior of MRM |
|
|
Chevalier
Joined: 16 Oct 2003 Posts: 424
|
Hi
I had a compound type from which i created a message.I gave the group indicator and group terminator.And i'm trying to map XML --> MRM
when printing output i observe the group indiactor and group terminator is priting twice in my output message, can any body tell whats going on behind this.by the way i'm using WMQI 2.1 csd 2 level
Thanx
Sam |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Jan 13, 2004 2:18 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
You probably also have the same values set for a terminator somewhere else - like a repeating element terminator or that kind of thing.
In other words, it's probably doing what you've told it to do. You'll have to get more specific about your model for me to give you any more help. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
Missam |
Posted: Tue Jan 13, 2004 2:28 pm Post subject: |
|
|
Chevalier
Joined: 16 Oct 2003 Posts: 424
|
Hi
Thanx for your prompt reply,
I had a compound type like this
msgType
---Recv
---Send
and from this i created a message of type msgType
i don't have any repeating elements ,my model is very simple,
msgType Properties type composition sequence type content closed
tds properties group indicator a
group terminator b
data element seperator <All Elements Delimited>
delimiter ,
thanx
sam |
|
Back to top |
|
 |
wooda |
Posted: Wed Jan 14, 2004 6:26 am Post subject: |
|
|
 Master
Joined: 21 Nov 2003 Posts: 265 Location: UK
|
When you say the group indicator and group terminator are printed twice. Do you mean there are two of each together in one place.
eg. <<data1,data2>> where < is GI and > is GT.
or do you mean you get an extra set somewhere in the message.
eg. <data1><data2> or <data1,data2><> ?
Is it possible that the XML message has two occurences of msgtype for some reason ? A trace of the message tree should help you determine this. |
|
Back to top |
|
 |
kimbert |
Posted: Wed Jan 14, 2004 6:33 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
Sam,
Can you post your actual output, and ideally the trace node output from before and after the compute node. |
|
Back to top |
|
 |
Missam |
Posted: Wed Jan 14, 2004 8:22 am Post subject: |
|
|
Chevalier
Joined: 16 Oct 2003 Posts: 424
|
Hi here is trace file before and after compute node
and the output data looks like <<data1,data2>>
Quote: |
(
(0x1000000)Properties = (
(0x3000000)MessageSet = ''
(0x3000000)MessageType = ''
(0x3000000)MessageFormat = ''
(0x3000000)Encoding = 273
(0x3000000)CodedCharSetId = 819
(0x3000000)Transactional = TRUE
(0x3000000)Persistence = TRUE
(0x3000000)CreationTime = GMTTIMESTAMP '2004-01-14 16:14:04.840'
(0x3000000)ExpirationTime = -1
(0x3000000)Priority = 0
(0x3000000)ReplyIdentifier = X'000000000000000000000000000000000000000000000000'
(0x3000000)ReplyProtocol = 'MQ'
(0x3000000)Topic = NULL
)
(0x1000000)MQMD = (
(0x3000000)SourceQueue = 'WMS100_TEMP_IN'
(0x3000000)Transactional = TRUE
(0x3000000)Encoding = 273
(0x3000000)CodedCharSetId = 819
(0x3000000)Format = 'MQSTR '
(0x3000000)Version = 2
(0x3000000)Report = 0
(0x3000000)MsgType = 8
(0x3000000)Expiry = -1
(0x3000000)Feedback = 0
(0x3000000)Priority = 0
(0x3000000)Persistence = 1
(0x3000000)MsgId = X'414d512044574d5344335132202020204002c3572001e201'
(0x3000000)CorrelId = X'000000000000000000000000000000000000000000000000'
(0x3000000)BackoutCount = 0
(0x3000000)ReplyToQ = ' '
(0x3000000)ReplyToQMgr = 'DWMSD3Q2 '
(0x3000000)UserIdentifier = 'zzsrinim '
(0x3000000)AccountingToken = X'0434313933000000000000000000000000000000000000000000000000000006'
(0x3000000)ApplIdentityData = ' '
(0x3000000)PutApplType = 6
(0x3000000)PutApplName = 'buildmsgs_seg '
(0x3000000)PutDate = DATE '2004-01-14'
(0x3000000)PutTime = GMTTIME '16:14:04.840'
(0x3000000)ApplOriginData = ' '
(0x3000000)GroupId = X'000000000000000000000000000000000000000000000000'
(0x3000000)MsgSeqNumber = 1
(0x3000000)Offset = 0
(0x3000000)MsgFlags = 0
(0x3000000)OriginalLength = -1
)
(0x1000010)XML = (
(0x1000000)Message = (
(0x2000000) = '
'
(0x1000000)Receiver = (
(0x2000000) = 'Recv'
)
(0x2000000) = '
'
(0x1000000)Sender = (
(0x2000000) = 'Send'
)
(0x2000000) = '
'
)
(0x6000002) = '
'
)
)
|
output trace
Quote: |
(
(0x1000000)Properties = (
(0x3000000)MessageSet = 'DTBU9L40CO001'
(0x3000000)MessageType = 'Message'
(0x3000000)MessageFormat = 'TDS'
(0x3000000)Encoding = 273
(0x3000000)CodedCharSetId = 819
(0x3000000)Transactional = TRUE
(0x3000000)Persistence = TRUE
(0x3000000)CreationTime = GMTTIMESTAMP '2004-01-14 16:14:04.840'
(0x3000000)ExpirationTime = -1
(0x3000000)Priority = 0
(0x3000000)ReplyIdentifier = X'000000000000000000000000000000000000000000000000'
(0x3000000)ReplyProtocol = 'MQ'
(0x3000000)Topic = NULL
)
(0x3000000)MQMD = 'MQHRF '
(
(0x3000000)SourceQueue = 'WMS100_TEMP_IN'
(0x3000000)Transactional = TRUE
(0x3000000)Encoding = 273
(0x3000000)CodedCharSetId = 819
(0x3000000)Format = 'MQSTR '
(0x3000000)Version = 2
(0x3000000)Report = 0
(0x3000000)MsgType = 8
(0x3000000)Expiry = -1
(0x3000000)Feedback = 0
(0x3000000)Priority = 0
(0x3000000)Persistence = 1
(0x3000000)MsgId = X'414d512044574d5344335132202020204002c3572001e201'
(0x3000000)CorrelId = X'000000000000000000000000000000000000000000000000'
(0x3000000)BackoutCount = 0
(0x3000000)ReplyToQ = ' '
(0x3000000)ReplyToQMgr = 'DWMSD3Q2 '
(0x3000000)UserIdentifier = 'zzsrinim '
(0x3000000)AccountingToken = X'0434313933000000000000000000000000000000000000000000000000000006'
(0x3000000)ApplIdentityData = ' '
(0x3000000)PutApplType = 6
(0x3000000)PutApplName = 'buildmsgs_seg '
(0x3000000)PutDate = DATE '2004-01-14'
(0x3000000)PutTime = GMTTIME '16:14:04.840'
(0x3000000)ApplOriginData = ' '
(0x3000000)GroupId = X'000000000000000000000000000000000000000000000000'
(0x3000000)MsgSeqNumber = 1
(0x3000000)Offset = 0
(0x3000000)MsgFlags = 0
(0x3000000)OriginalLength = -1
)
(0x1000021)MRM = (
(0x1000000)Message = (
(0x3000000)Receiver = 'Recv'
(0x3000000)Sender = 'Send'
)
)
)
|
|
|
Back to top |
|
 |
wooda |
Posted: Wed Jan 14, 2004 9:23 am Post subject: |
|
|
 Master
Joined: 21 Nov 2003 Posts: 265 Location: UK
|
Well the output tree is clearly fine.
You didn't give us the actual output message.
Are you using anything other than a single printable ascii character for your GT and GI ?
Are you absolutely sure there isn't another level of structure in your message definition you haven't told us about (sorry has to ask) ?
If no to the above. That leaves only one futher conclusion.. it was a bug in 2.1 CSD2. Hmm. Still don't believe that. But we are running out of possiblities. This definitely works on later versions of 2.1. |
|
Back to top |
|
 |
Missam |
Posted: Wed Jan 14, 2004 10:21 am Post subject: |
|
|
Chevalier
Joined: 16 Oct 2003 Posts: 424
|
hi,
i'm pretty sure i'm trying this on basi compund type with just two elements in this.i also tried by changing the TDS data element seperation to Fixed length the output looks like this ''RecvSend' ' and if i give all elements delimited with delimiter , then the output will be ''Recv,Send''
i don't know ,but i too agree that it may be a bug in CSD2.
thanx
sam |
|
Back to top |
|
 |
wooda |
Posted: Thu Jan 15, 2004 1:09 am Post subject: |
|
|
 Master
Joined: 21 Nov 2003 Posts: 265 Location: UK
|
If you use a different GI/GT than ' does it still produce duplicate terminators ? |
|
Back to top |
|
 |
kimbert |
Posted: Thu Jan 15, 2004 1:33 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
How are you specifying the GI and GT in the TDS properties? If you are using '<' and '>' I think you are supposed to use the mnemonics <LT> and <GT>. Worth a try, anyway. |
|
Back to top |
|
 |
wooda |
Posted: Thu Jan 15, 2004 1:53 am Post subject: |
|
|
 Master
Joined: 21 Nov 2003 Posts: 265 Location: UK
|
Hi kimbert, I think I introduced some confusion earlier with < and >.
If you read IamSam's last post he gave the actual output message which was.
''recvsend'' (FL) or ''recv,send'' (AED)
so the terminator/indicator is a single quote ' |
|
Back to top |
|
 |
|