Author |
Message
|
abcmno123 |
Posted: Tue Dec 12, 2006 9:50 pm Post subject: Passing empty message |
|
|
Novice
Joined: 16 Aug 2006 Posts: 22
|
Hi all,
I have a message set which is configured to pass MRM - XML. Hence, in the MQInput node I have set all the message set properties. Also, the content validation is set and the exception is set to immediate.
So now, if I pass a proper XML message with all the fields specified in te message set it is working fine.If I remove any tag or add any extra tag, then also it throwing an exception hich means that the message set is working fine.
But, when I pass an empty message means with no values at all in the message, it is not throwing an exception.The message passes the MQInput node properly without any exception.
I dont want the empty message to pass through te MQInput node.
What can be done about this? |
|
Back to top |
|
 |
Mercury |
Posted: Wed Dec 13, 2006 1:55 am Post subject: Re: Passing empty message |
|
|
 Apprentice
Joined: 24 Jun 2006 Posts: 32 Location: Hyderabad
|
abcmno123 wrote: |
But, when I pass an empty message means with no values at all in the message, |
Can you tell me more on this.Are you passing the message with all tags but no values in them or just empty blank message |
|
Back to top |
|
 |
abcmno123 |
Posted: Wed Dec 13, 2006 3:40 am Post subject: |
|
|
Novice
Joined: 16 Aug 2006 Posts: 22
|
No values in the message means an empty blank message.No tags at all.
One way to handle it is in the ESQL. Is there no way to handle it using message set? |
|
Back to top |
|
 |
kimbert |
Posted: Wed Dec 13, 2006 4:11 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
MRM validation only kicks in once you have a message. You'll have to use some ESQL. |
|
Back to top |
|
 |
Mercury |
Posted: Wed Dec 13, 2006 5:15 am Post subject: |
|
|
 Apprentice
Joined: 24 Jun 2006 Posts: 32 Location: Hyderabad
|
How can you put an empty message in the input queue |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Dec 13, 2006 5:16 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
give an empty buffer to MQPUT. Or a 0 for BUFFLEN. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
nab054371 |
Posted: Fri Dec 15, 2006 11:44 am Post subject: |
|
|
Disciple
Joined: 15 Nov 2006 Posts: 173
|
One way out is to set the message format to BLOB on MQINPUT node.Then check messahe length and if it happens to be greater than 0,use mapping node with your message set else report a failure.. |
|
Back to top |
|
 |
Mercury |
Posted: Sun Dec 17, 2006 5:48 am Post subject: Re: Passing empty message |
|
|
 Apprentice
Joined: 24 Jun 2006 Posts: 32 Location: Hyderabad
|
abcmno123 wrote: |
I dont want the empty message to pass through te MQInput node.
|
Quote: |
One way out is to set the message format to BLOB on MQINPUT node.Then check messahe length and if it happens to be greater than 0,use mapping node with your message set else report a failure..
|
U have to implement this logic in compute node which means message is passing MQInput node.U are n't doing what u mentioned in ur previous posts  |
|
Back to top |
|
 |
fjb_saper |
Posted: Sun Dec 17, 2006 6:58 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
@ Merecury:
kimbert wrote: |
MRM validation only kicks in once you have a message. You'll have to use some ESQL. |
That means that after the input node you need a compute node.
Reject the message (throw exception) if the MRM node has no children.
[edit] You might have to check for an inexisting first child element that is not at group level[/edit]
This is compatible with the previous settings as advocated...
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
pathipati |
Posted: Sun Dec 17, 2006 3:20 pm Post subject: |
|
|
Master
Joined: 03 Mar 2006 Posts: 296
|
Try setting validation properties of MQInput Node. |
|
Back to top |
|
 |
nab054371 |
Posted: Sun Dec 17, 2006 3:27 pm Post subject: |
|
|
Disciple
Joined: 15 Nov 2006 Posts: 173
|
I am thinking validation will occur only if there is a message?
One potential solution as I mentioned earlier would be:
SET MQINPUT message type to BLOB.
Have a filter/compute node.Check message length .if mlength> 0 output goes to translation node else failure. |
|
Back to top |
|
 |
|