|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Destination List not completing process |
« View previous topic :: View next topic » |
Author |
Message
|
woolmerc |
Posted: Wed May 12, 2004 6:05 pm Post subject: Destination List not completing process |
|
|
 Novice
Joined: 12 May 2004 Posts: 21
|
Hi all,
I have a situation where I want to pick up a message off a queue and distribute it to 2 other queues without modifying any data.
The nodes I have created are simple:
MQInputNode ---> Compute ---> RouteToLabel
Label A ----> MQOutput
Label B ----> MQOutput
Unfortunately I am finding my message is only being delivered to 1 destination queue and then ending. I cannot get the message delivered to the 2nd queue.
I am invoking the following ESQL code in my Compute mode:
-----------------
CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN
SET OutputLocalEnvironment.Destination.RouterList.DestinationData[1].labelname='Label A';
SET OutputLocalEnvironment.Destination.RouterList.DestinationData[2].labelname='Label B';
RETURN TRUE;
END;
------------------
I have checked my Label names and they are all spelt correctly. I do not get any error messages associated with the flow.
If I set the 'Mode' property to 'Route to First', Label A receives the flow. By changing the 'Mode' to the reverse option Label B receives the flow (as expected) but the 2nd label never gets control.
I am specifying 'LocalEnvironment' in the 'Compute Mode' property in the Compute Node.
I cannot understand why my message flow is failing and from the research I have done on this site, I am doing everything I should.
Please help.
Thanks, _________________ Chris Woolmer
Programmer
KAZ Group Limited |
|
Back to top |
|
 |
fschofer |
Posted: Thu May 13, 2004 1:03 am Post subject: |
|
|
 Knight
Joined: 02 Jul 2001 Posts: 524 Location: Mainz, Germany
|
Hi Chris,
the RouteToLabel node sends your message to only one label of yor destination list. (Upwards or downwards)
To process your complete list you have 3 possibilities:
A) But additional RouteToLabel Nodes behind your labels A or B
B) Build a node loop with a filter node
C) Use the PROPAGATE function in a compute node before your RouteToLabel node
and do the destination list setting / deleting on your own
I would recommend C.
Greetings
Frank |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu May 13, 2004 3:21 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
If you want to send the same thing to two or more queues, you should do the following. - Set the output mode of the MQOutputNode to DestinationList
- Create a destination list that holds each queue name in the compute node
. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
woolmerc |
Posted: Thu May 13, 2004 7:09 pm Post subject: |
|
|
 Novice
Joined: 12 May 2004 Posts: 21
|
Thanks greatly for your help guys. Much appreciated. I misinterpreted the RouteToLabel functionality.
I have implemented Frank's option B. I chose not to go with your option Jeff as I want to do some database logging after each successful Put onto a queue.
Option B seems to be working well for me guys.
Thanks again  _________________ Chris Woolmer
Programmer
KAZ Group Limited |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|