我正在研究一个简单的用例,它允许客户端动态注册来自JMS端点的事件。我目前的实现如下:
...
public void addListener(Event event, Listener listener){
try {
camelContext.addRoutes(new RouteBuilder() {
@Override
public void configure() throws Exception {
from(event.from()).bean(listener);
}
});
} catch (Exception exception) {
exception.printStackTrace();
}
}
...
上面的event.from()将标识消息将被消耗的端点(“activemq:topic:market.stocks.update.ibm”),并且listener将是Listener接口的实现。
我设想了一个典型的调用:
notifications.addListener(updateEvent, new Listener(){
void listen(){
System.out.println("Hey! Something got updated");
}
});
当然,除了驼峰路线之外,上述任何一个都没有作用,因为它有一个具体的bean作为接收者,因此驼峰语境无法启动。
动态添加bean端点的推荐方法是什么?
答案 0 :(得分:2)