java - Camel Route 到 XMPP 聊天室惨败

标签 java xmpp apache-camel

我正在尝试连接到本地 OpenFire 服务器上的 Xmpp 聊天室。我正在运行 Pidgin,并且可以验证 OpenFire 是否工作正常。我的 Camel 路线看起来像这样:

from("{{chat.timer}}")  
.setBody(constant("I will win!"))
.to("xmpp://superman@localhost:5222/password=secret&room=room1@conference.localhost")

但是我在 ServiceMix 日志中收到错误:

13:33:20,772 | ERROR | data.flow.start] | DefaultErrorHandler | 90 - org.apache.camel.camel-core - 2.8.3 | Failed delivery for exchangeId....
. 
.
.
Caused by: java.lang.NoSuchMethodError: org.jivesoftware.smackx.muc.MultiUserChat.getServiceNames(Lorg/jivesoftware/smack/XMPPConnection;)Ljava/util/Collection;
    at org.apache.camel.component.xmpp.XmppEndpoint.resolveRoom(XmppEndpoint.java:197)

还有一些我认为相同的“NoSuchMethodErrors”。

我在 ServiceMix 中安装了 3.2.0.1,我不明白为什么会弹出这些错误。我可以通过Camel向用户发送Xmpp消息,这是第一次使用聊天室。任何帮助将不胜感激。

最佳答案

事实证明,我的运行时使用的是 servicemix smack bundle (版本 3.2.0),而我的编译版本使用的是 jivesoftware smack(版本 3.1.0)。

我将编译的依赖项更新为 servicemix 版本,一切正常。

关于java - Camel Route 到 XMPP 聊天室惨败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10198007/

相关文章:

java - 为什么这些同步方法不断给我不同的输出?

java - Spring 中的命令对象

android - ejabberd 如何在 xmppframework 中使用 MUC/SUB

java - 从 Camel 处理器/组件产生多个输出

java - Apache Camel - 从 Rest 读取 Json,然后转换为 Java 对象

java - 如何使用 Apache Camel 测量耗时

java - 为什么不会总是发生堆栈溢出?

java - 如何用 Java 向 Octoprint 发送 POST 请求?

ios - XMPPFramework-TURNSocket无法接收到我自己发送的数据吗?

java - 使用 Smack 库在端口上监听 XMPP 连接