我有一个奇怪的问题。我正在尝试使用Apache Tomcat中的servlet上托管的smack api库4.2.4创建Xmpp客户端。
我能够发送和接收消息(通过“聊天监听器”事件),而我既没有收到任何MUC邀请,也没有得到单独的MUC数据包监听器事件。
我已经检查了调试日志,事件也没有出现在其中。 好像我在Java控制台应用程序中尝试相同的代码(仅更改控制台主条目和调试)一样,我正在获取所有这些事件。
关于如何使smack在servlet上工作的任何想法吗?
预先感谢...
注意:我正在使用单个连接实例。我没有关于聊天发送或响应的问题。面对MUC邀请函上的问题...
答案 0 :(得分:0)
最终修复...实现了连接侦听器,并在连接断开时重新连接。现在一切看起来不错。
connection.addConnectionListener(new ConnectionListener(){
@Override
public void reconnectionSuccessful() {
Log.i("","Successfully reconnected to the XMPP server.");
}
@Override
public void reconnectionFailed(Exception arg0) {
Log.i("","Failed to reconnect to the XMPP server.");
}
@Override
public void reconnectingIn(int seconds) {
Log.i("","Reconnecting in " + seconds + " seconds.");
}
@Override
public void connectionClosedOnError(Exception arg0) {
Log.i("","Connection to XMPP server was lost.");
PerformReConnect(); }
@Override
public void connectionClosed() {
Log.i("","XMPP connection was closed.");
}
});