2015-01-21 107 views
0

通过在Mule ESB中使用复合源,可以一次从不同的队列获取输入。有什么方法可以了解输入WMQ节点名称。Mule ESB中带有WMQ节点的复合源ESB

我有2个队列(ABC & XYZ),从中可以获得输入并可以应用进一步的转换。是否有任何可能的方式来了解收到消息的队列名称。

+0

队列后不久,保留记录和检查#[message.inboundProperties]和#[message.outboundProperties。您可以查看所有属性,并根据您的需要提取任何值(队列名称或任何内容)。 – star 2015-01-21 10:48:18

+0

#[message.inboundProperties.MULE_ORIGINATING_ENDPOINT]帮助我获取队列名称,如果我使用记录器节点。但是我想在一个java转换器节点中使用这个队列名称,后面是WMQ节点。 message.getInboundPropertyNames()只给出属性而不给出属性的值 – user3663479 2015-01-21 12:04:28

+0

message.getInboundProperty(“MULE_ORIGINATING_ENDPOINT”)不会给你你正在寻找的属性的值吗? – tortoise 2015-01-23 08:48:30

回答

0

如果您需要根据队列名称采取不同的行为,则不需要使用复合源代码。

我会建议是acordingly设计你的流量你的需求:

flow(queueA)->flowVars.queueName="queueA"->flow-ref(realwork) 
flow(queueB)->flowVars.queueName="queueB"->flow-ref(realwork) 
flow(realwork)->dotherealworkhere