【问题标题】:Apache Camel - How is the method name selected for invocation in this bean?Apache Camel - 如何在此 bean 中选择用于调用的方法名称?
【发布时间】:2019-12-23 15:47:47
【问题描述】:

我刚开始使用 Apache Camel,我对 Camel 如何在以下代码中选择要调用的方法感到困惑:

这是YouTube video的一部分。

someBean 定义为:

@Singleton
public class SomeBean {
    private int counter;
    public String someMethod(String body); //Not providing the full definition as it is in the video.
}

根据Camel documentation,这些规则用于选择调用方法,但我无法确定使用的是哪个规则。

Camel 是如何判断 bean 对象调用哪个方法的?

【问题讨论】:

    标签: java apache-camel javabeans


    【解决方案1】:

    您提到的method selection mechanism in the Camel docs 只是只是“冰山一角”。还有更多方法可以选择 Bean 的方法。

    如果您想了解成熟的 Bean 方法选择机制,请获取 Claus Ibsen 的 Camel in Action 副本。第 4.4 章专门讨论这个主题,并用近 10 页的示例对其进行了解释。

    在你的情况下,我猜匹配规则是

    是否有只有一种方法具有单个参数

    如果是这种情况,Camel 将使用此方法。您可以使用RouteTest 轻松尝试此操作。如视频中所示,创建一个路由和一个简单的 bean。当它工作时,开始向 bean 添加方法并查看选择了什么方法。

    【讨论】:

      猜你喜欢
      • 2015-06-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-14
      • 2020-07-02
      • 1970-01-01
      • 2020-06-25
      • 1970-01-01
      相关资源
      最近更新 更多