0

我以前只使用过 Mule 2.2.1,但我现在正在阅读 Mule 3.4/3.5。

这些版本之间的一个主要变化是引入了流程。

Mule 配置的文档中,我发现了这一点:

一个流从一个入站端点开始,从该端点读取消息,并以消息处理器列表继续

但是,在这篇文章中,我遇到了调用元素。似乎流也可以从调用元素开始。

我在 Mule 文档中搜索调用元素的文档,但找不到它。有人可以帮助解释调用元素的语义,或指向任何相关文档吗?

4

1 回答 1

1

“invoke”元素是消息处理器而不是消息源。

引用“一个流从一个入站端点开始,从中读取消息并继续一个消息处理器列表”这句话并不完全正确,因为使用 flow-refs 通过其他流引用的流(例如子流或私有流)并不完全正确需要一个入站端点,并且只能有一个消息处理器列表。

因此它不能用于触发流。然而,上面的示例似乎是一个私有流,它将通过 flow-ref 从另一个流中引用,因此为什么它从消息处理器开始。更多 eon 私有和子流程在这里: http: //www.mulesoft.org/documentation/display/current/Using+Flows+for+Service+Orchestration

回到调用消息处理器。没有关于这方面的文档,但简单地说,它使用给定的参数调用给定对象的指定方法。

来自 javadoc:调用对象的指定方法。可以提供一组参数表达式来将消息映射到方法参数。使用的方法由方法名称以及提供的参数表达式的数量决定。表达式评估的结果将在可能的情况下自动转换为方法参数类型。当前不支持具有相同名称和相同数量参数的多个方法 - http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/processor/InvokerMessageProcessor.html

于 2013-08-14T08:17:31.993 回答