0

我刚刚开始使用使用 Apache Camel 2.15.3 的应用程序。我是 Camel 的新手,我正在尝试了解消息是如何发送的以及路由中组件之间的外观。

应用程序中的路由是使用 spring 扩展 xml 设置的。以下是其中一条路线的外观示例。

    <route id="register">
        <from uri="{{in.queue}}"/>
        <enrich uri="direct:getSequenceNumber" strategyRef="sequenceNumb"/>
        <to uri="bean:extractor"/>
        <to uri="bean:mover"/>
        <to uri="bean:normalizer"/>
        <to uri="bean:logger"/>
        <to uri="bean:packager"/>
        <split parallelProcessing="true">
            <simple>${body}</simple>
            <to uri="{{out.queue}}"/>
        </split>
    </route>

首先是一个简短的术语问题:这个例子中的中间 bean 叫什么?端点?成分?或者是其他东西?现在我称它们为组件。

我现在的主要困惑是要了解什么是输入,什么是从一个组件传递到下一个组件。在这种情况下,所有组件都是具有一个公共方法的 javabean。该方法有时具有 void 返回类型,有时返回一些对象。例如String,List,一个camel Message-object,一个不实现任何camel接口的项目自定义对象。有时返回类与以下 bean 的参数匹配,有时则不匹配。

我不明白返回和输入到组件的限制是什么,并且能够读取和预测消息在 bean 中的样子。

我已经阅读了 Camel 网站上的一些文档,但我的谷歌搜索并没有发现任何有用的信息。

是否有人对要搜索的内容有解释或提示,或者有指向某个地方的链接来解释正在发生的事情?

4

1 回答 1

3

我建议阅读 Camel in Action 书的第 1 章(免费章节)——它涵盖了 Camel 架构的所有重要概念以及消息在 Camel 中的样子

于 2017-10-07T11:51:16.623 回答