4

使用 Camel 代理,我可以执行以下操作:

public class MyBean {
    @Produce(uri = "direct:mybean")
    private MyProxy producer;

    public void doSomething() {
        String response = producer.sayHello("James");
    }
}

其中 MyProxy 是与一种方法的接口 - sayHello()

但在我的情况下,我想在MyProxy接口中有多个方法,理想情况下应该有单独的 URI 端点。否则,我将为要代理的每个端点都有一个接口。

注释@Produce@EndpointInject可以在方法上设置,所以我想这是可能的。是吗?如果没有,你能推荐我另一种方法吗?

4

1 回答 1

-2

您可以通过在 camel 中注册 MyProxy Bean 并使用 bean 和 beanRef 调用来调用方法来做到这一点。

from("")
    .bean(MyProxy.class, "sayHello(James)");

或者

from("")
    .beanRef("idOfProxyBeanFromRegistry", "sayHello(James)");

有关更多信息,请参阅骆驼 bean 绑定:http ://camel.apache.org/bean-binding.html

于 2015-10-07T15:48:32.790 回答