我注意到,如果我有一个这样的流模式:
<flow name="httpIn">
<http:inbound-endpoint exchange-pattern="request-response" address="http://localhost:9001/test/in" />
<logger level="INFO" />
<http:outbound-endpoint exchange-pattern="request-response" address="http://localhost:9001/test/out" />
<logger level="INFO" />
</flow>在调用带有request-response的outbound-endpoint交换模式之后,来自原始HTTP请求的入站属性会丢失。
这是正常行为吗?是否有办法对所有出站端点整体禁用此功能,或者此端点是特定的?
发布于 2013-06-24 20:38:08
是的,这是正常的行为。这里有一个很好的解释:
http://blogs.mulesoft.org/mule-school-the-mulemessage-property-scopes-and-variables/
模块入站属性
入站属性不能由您设置。消息源(如入站终结点)在收到消息时为您设置它们。当穿越“传输障碍”Mule出站属性时,入站属性会丢失
出站属性可以由您设置。当跨越“传输障碍”时,出站属性将自动转换为入站属性,并且不再作为出站属性存在。-更多信息请访问:http://blogs.mulesoft.org/mule-school-the-mulemessage-property-scopes-and-variables/#sthash.yGzTrZEQ.dpuf
发布于 2013-06-24 21:30:52
是的,Mule入站属性不会在传输中传播。正如此link中所解释的
但是请注意,您可以通过如下方式复制属性来保留传输之间的所有入站属性:
<copy-properties propertyName="*" />
这将复制所有属性,如果只需要很少的属性,您还可以指定特定的属性名称。
发布于 2016-12-12 00:20:33
Mule入站属性:这些属性由消息源设置,否则inblound端点automatically.they不能由您设置。它们是不变的,即。您不能对它们进行任何更改。您只能访问它们,但不能修改它们。他们在穿过“运输障碍”后迷路了。
Mule Outbound properties :这些属性可以由您设置。在穿越传输屏障后,出站属性将自动转换为入站属性,并且不再在出站范围中找到它们。
https://stackoverflow.com/questions/17266272
复制相似问题