使用Camel代理我可以执行以下操作:
public class MyBean {
@Produce(uri = "direct:mybean")
private MyProxy producer;
public void doSomething() {
String response = producer.sayHello("James");
}
}
其中MyProxy与一种方法接口 - sayHello()
。
但在我的情况下,我希望在MyProxy
接口中有多个方法,理想情况下这些方法将具有单独的URI端点。否则,我将为每个要代理的端点设置一个接口。
可以在方法上设置anotations @Produce
和@EndpointInject
,所以我猜这是可能的。是吗?如果没有,你能推荐我另一种方法吗?
答案 0 :(得分:-1)
你可以通过在camel中注册MyProxy Bean并使用bean和beanRef调用调用方法来实现这一点。
from("")
.bean(MyProxy.class, "sayHello(James)");
或
from("")
.beanRef("idOfProxyBeanFromRegistry", "sayHello(James)");
有关更多信息,请参阅camel bean binding:http://camel.apache.org/bean-binding.html