Author |
Message
|
pcelari |
Posted: Tue Jan 30, 2007 12:53 pm Post subject: why ComputeNode out XML msg lands in DEAD Q? |
|
|
Chevalier
Joined: 31 Mar 2006 Posts: 411 Location: New York
|
I use a compute node to transform a TDS msg and populate a MRM xml msg. Its out terminal is connected to a MQOutput node, with a local queue.
The MRM XML msg got populated correctly before leaving the compute node, and there is no exception thrown.
However a msg of length 0 is put into the out queue, while the original TDS msg got put to DeadLetterQ.
I want to put the xml msg, created in the compute node to the MQOutput node's queue. What could be causing this? _________________ pcelari
-----------------------------------------
- a master of always being a newbie |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Jan 30, 2007 1:23 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Because your code is generating an error.
This error will have been logged to your system log on the broker machine.
If you read that error, it will tell you more.
If I had to guess, I'd say you were not building your output XML message correctly, or you were trying to reference non-existent fields in the input message. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
pcelari |
Posted: Tue Jan 30, 2007 1:44 pm Post subject: |
|
|
Chevalier
Joined: 31 Mar 2006 Posts: 411 Location: New York
|
thanks for insight. As always, you're right. the msg to deadQ was caused by a newline character in the input msg.
Now, that's gone. but a 0 byte msg is still getting put to the outQ.
I do noticed the Format field of MQMD is set to empty. I wonder if this could be the reason.
anything else could I be missing? _________________ pcelari
-----------------------------------------
- a master of always being a newbie
Last edited by pcelari on Tue Jan 30, 2007 1:50 pm; edited 1 time in total |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Jan 30, 2007 1:50 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Again, this is a wild guess.
You aren't indicating that the message is now XML data in (hopefully) the XMLNSC domain. So you're setting fields in OutputRoot.XMLNSC, but you're not setting Properties to indicate that the message domain has changed.
Another possibility is that you aren't creating the OutputRoot message tree with the correct parser.
A third possibility is that your actual XML data is under a correct parser-identified message tree that is NOT the last child of OutputRoot. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
pcelari |
Posted: Tue Jan 30, 2007 1:54 pm Post subject: |
|
|
Chevalier
Joined: 31 Mar 2006 Posts: 411 Location: New York
|
no, the msg is MRM. the layout is correct, as you suggested under another posting, I hardcoded the envelop in the same ESQL code, no big deal really.
I do noticed the Format field of MQMD is set to empty. But this couldn't be the reason, as it behaves the same even I alter the field to "string". _________________ pcelari
-----------------------------------------
- a master of always being a newbie |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Jan 30, 2007 2:04 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Oh, sorry. I missed that you said "MRM XML", and just saw "XML".
Then likely you've got a mismatch somewhere between your message tree and the logical model.
or, again, OutputRoot.MRM is not the last child of OutputRoot.
What's a trace node show for the message tree from right before the MQOutput node? _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
pcelari |
Posted: Tue Jan 30, 2007 2:09 pm Post subject: |
|
|
Chevalier
Joined: 31 Mar 2006 Posts: 411 Location: New York
|
Oh, yes. You were right again !
the msgset, msgtype, and msgformat fields in the output msg are still the same as the original TDS format. It never downed on me that I need to reset the properties fields. When using Mapping, it's done automatically.
So I'll have to reset them in the code.
many thanks, G.M., I'll change them, and get back to you. _________________ pcelari
-----------------------------------------
- a master of always being a newbie |
|
Back to top |
|
 |
pcelari |
Posted: Tue Jan 30, 2007 4:16 pm Post subject: |
|
|
Chevalier
Joined: 31 Mar 2006 Posts: 411 Location: New York
|
Yes. that did the trick. Now I have the whole msg in the queue.
again, thanks a lot for the great insight ! _________________ pcelari
-----------------------------------------
- a master of always being a newbie |
|
Back to top |
|
 |
|