我已经使用Jabber Smack API创建了一个聊天应用程序。我正在成功地接收文件(从另一个名为"Gajim“的应用程序),但我的上传失败只有几秒钟。在“协商”转移状态后,我得到一个“错误”状态。
我通过提供一个“完全合格的”jabber ID纠正了这个错误,但现在在我接受来自另一个(Gajim)客户端的传输后,传输会无限期地停留在“协商流”上。
我的swingWorker类有以下代码:
OutgoingFileTransfer transfer;
@Override
public Void doInBackground() {
transfer = manager.createOutgoingFileTransfer("vedant1811@jabber.org/Gajim");
File uploadFile = fileChooser.getSelectedFile();
try {
transfer.sendFile(uploadFile, "test");
} catch (XMPPException ex) {
System.out.println("sendFile Error");
ex.printStackTrace();
}
while (!transfer.isDone()) {
if (transfer.getStatus().equals(Status.error)) {
transferLabel.setText("ERROR!!! " + transfer.getError());
} else {
transferLabel.setText("Uploading File: " + uploadFile.getName()
+ " STATUS: " + transfer.getStatus());
fileProgressBar.setValue((int) (100 * transfer.getProgress()));
}
try {
Thread.sleep(500);
} catch (InterruptedException ex) {
System.out.println("thread.sleep error");
ex.printStackTrace();
}
}
return null;
}发布于 2012-06-19 18:25:53
jabber服务器中出现错误。使用openfire服务器解决了我所有的问题
https://stackoverflow.com/questions/11009772
复制相似问题