开发者社区> 问答> 正文

使用smack4.1.?报错

九月 15, 2015 9:53:37 上午 org.jivesoftware.smack.AbstractXMPPConnection callConnectionClosedOnErrorListener
警告: Connection closed with error
java.lang.IllegalArgumentException: id must either be null or not the empty String
at org.jivesoftware.smack.util.StringUtils.requireNotNullOrEmpty(StringUtils.java:263)
at org.jivesoftware.smack.packet.Stanza.setStanzaId(Stanza.java:123)
at org.jivesoftware.smack.util.PacketParserUtils.parseMessage(PacketParserUtils.java:224)
at org.jivesoftware.smack.util.PacketParserUtils.parseStanza(PacketParserUtils.java:151)
at org.jivesoftware.smack.AbstractXMPPConnection.parseAndProcessStanza(AbstractXMPPConnection.java:952)
at org.jivesoftware.smack.tcp.XMPPTCPConnection.access$400(XMPPTCPConnection.java:139)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:980)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$200(XMPPTCPConnection.java:935)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:950)

at java.lang.Thread.run(Unknown Source)

报错如上所示,也是刚接触smack不久

代码也是那种最基础的demo的代码,但是不知道为什么会出现这样的问题,用这段代码可以给Royee Messageer客户端发消息,但是一旦接收消息就会报上面的错误,不知道怎么解决~~(smack版本是最新发布的版本4.1.3,码完这些发现已经发布4.1.4了。。)

Chat newchat=chatmanager.createChat(targetaccount,new ChatMessageListener() {

@Override
public void processMessage(Chat arg0, Message message) {
System.out.println("Message from "+message.getFrom()+":"+message.getBody());
}
});
@SuppressWarnings("resource")
Scanner scanner=new Scanner(System.in);
while(true){
String outmessage=scanner.nextLine();
try {
newchat.sendMessage(outmessage);
} catch (NotConnectedException e) {
e.printStackTrace();
}
}


展开
收起
爱吃鱼的程序员 2020-06-12 11:14:37 431 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    测试的客户端没有升级所致

    2020-06-12 11:14:54
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载