在xmpp協(xié)議通信中,用smack框架登錄非本地openfire服務器的時候,出現javax.net.ssl.SSLException: Received fatal alert: internal_error異常信息。原因是登錄他網openfire服務器出現登錄延時(在沒有成功鏈接到openfire服務器),然后就進行登錄login操作的時候,就會出現這個異常。
解決辦法
1、在鏈接openfire服務器后,線程休眠一段時間,再進行登錄login操作。
……
connection.connect();
Thread.sleep(3000);connection.login(user, pass);
……
2、設置setPacketReplyTimeout參數
......
SmackConfiguration.setPacketReplyTimeout(PACKET_REPLY_TIMEOUT);
config = new ConnectionConfiguration(SERVER, PORT);......
注意:如果設置了休眠時間或setPacketReplyTimeout參數后還是出現錯誤,請講時間設置再大些看看
參考官方解答:http://community.igniterealtime.org/message/206443#206443