我正在使用 Tapestry 5、Smack api 3.1.0。
我已经建立了连接,并且能够通过 xmpp 服务器与用户进行通信,但我收到的回复会在收到时发送到标准输出:
Chat chat = connection.getChatManager().createChat("blah@jabber.org", new MessageListener() {
public void processMessage(Chat chat, Message message) {
// Print out any messages we get back to standard out.
System.out.println("Received message: " + message.getBody()); // this works
showonbrowser = message.getBody();
System.out.println(showonbrowser) // this prints nothing
}
};
我希望获得对我的 html 文件的回复,以便我可以在网络上而不是控制台上阅读它们。但是,当我尝试将 message.getBody() 设置为 showonbrowser (页面上的属性)时,我看不到任何结果。有谁知道我如何解决这个问题?
问候,
凯斯
最佳答案
Smack 是多线程的,它有一个讨厌的习惯,会(默默地)吃掉抛出的异常。很可能您没有使用线程安全的 GUI,并且它会抛出一个您永远不会得到的异常。
关于java - Smack API 和 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/573778/