1

我有一个 MuleClient,它向如下所示的 Mule 流发送消息,但我没有看到响应部分的 mule 流中反映的属性,我应该将属性设置为什么范围?

MuleMessage msg = new DefaultMuleMessage();
Map<String,Object> propertiesMap = new HashMap<String,Object>();
propertiesMap.put("name", "hello");
msg.addProperties( propertiesMap, PropertyScope.INVOCATION);

然后在流程中我尝试像这样访问这个属性

message.getInvocationProperty("name")

它返回null ...我错过了什么?

4

2 回答 2

4

如果您使用 VM(或任何传输)端点向流发送消息,则不会传播调用属性。

您需要将属性放置在出站范围内:它们将从流的入站端点到达入站范围。

于 2013-06-14T00:25:49.947 回答
0

由于您将 MuleMessage 发送到连接器(即入站 vm),因此您的流程中没有调用属性。出站范围内的 MessageProperties 将被修改为入站范围。所以在你的流访问中使用出站范围,如 #[message.inboundPrperties['name']]

于 2015-06-26T04:06:45.817 回答