我对骆驼非常陌生,并且一直在努力了解如何在特定场景中使用骆驼。 在这种情况下,有一个(基于Java的)代理程序会不时生成操作。我需要一个事件驱动的消费者来获得这些事件的通知。这些事件将被路由到“文件”制作者(暂时)。如何在骆驼中实现事件驱动消费者
在骆驼书中,示例是针对投票的消费者。我无法找到针对事件驱动型消费者的通用解决方案。 我碰到一个类似的实现来抓JMX:
public class JMXConsumer extends DefaultConsumer implements NotificationListener {
JMXEndpoint jmxEndpoint;
public JMXConsumer(JMXEndpoint endpoint, Processor processor) {
super(endpoint, processor);
this.jmxEndpoint = endpoint;
}
public void handleNotification(Notification notification, Object handback) {
try {
getProcessor().process(jmxEndpoint.createExchange(notification));
} catch (Throwable e) {
handleException(e);
}
}
}
这里,每当JMX通知到达的handleNotification被调用。
我相信我必须做类似的事情才能让我的消费者在代理生成操作时得到通知。但是,上面的handleNotification方法是JMX特有的。该网页上说:“在实现您自己的事件驱动的消费者时,您必须确定一个类似的事件侦听器方法,以便在您的自定义消费者中实现。”
我想知道:如何识别类似的事件侦听器,以便我的客户在我的代理有动作时得到通知。
任何意见/链接到网页非常感谢。
非常感谢您的回复。我特别想知道如何发送活动。感谢您解释这一点。将尽快尝试。 (我是JEE的新手,所以可能需要一段时间才能弄清楚这一切) – sura 2012-08-14 20:07:09
好。更新了关于不同传输的答案,即嵌入了Seda和ActiveMQ。 – 2012-08-14 21:40:17