【发布时间】:2019-08-20 15:20:58
【问题描述】:
我正在尝试使用 Smack API 从 Java 连接 ejabberd 服务器。当我使用以下代码时,我可以连接到 ejabberd 服务器。
String server = "my server ip";
DomainBareJid serviceName = JidCreate.domainBareFrom(server);
XMPPTCPConnectionConfiguration config = XMPPTCPConnectionConfiguration.builder()
.setHost(server) method
.setUsernameAndPassword("uname", "password")
.setPort(5222)
.setSecurityMode(ConnectionConfiguration.SecurityMode.disabled)
.setXmppDomain(serviceName)
//.setHostnameVerifier(verifier)
//.setHostAddress(addr)
.setDebuggerEnabled(true)
.build();
AbstractXMPPConnection conn1 = new XMPPTCPConnection(config);
conn1.connect();
if (conn1.isConnected()) {
Log.d("XMPP", "Connected");
}
conn1.login();
if (conn1.isAuthenticated()) {
Log.d("XMPP", "Authenticated");
/* EntityBareJid jid = JidCreate.entityBareFrom("sadegh@localhost");
org.jivesoftware.smack.chat2.Chat chat = ChatManager.getInstanceFor(conn1).chatWith(jid);
chat.send("Eureka, I am connected!");*/
}
执行上述代码后出现以下错误
org.jivesoftware.smack.SmackException$ConnectionException: The following addresses failed: '157.230.160.183:5222' failed because: de.measite.minidns.hla.ResolutionUnsuccessfulException: Asking for 157.230.160.183. IN A yielded an error response NX_DOMAIN, '157.230.160.183:5222' failed because: de.measite.minidns.hla.ResolutionUnsuccessfulException: Asking for 157.230.160.183. IN AAAA yielded an error response NX_DOMAIN
08-20 20:42:00.447 27072-27107/com.example.portalejabberddemo W/System.err: at org.jivesoftware.smack.tcp.XMPPTCPConnection.connectUsingConfiguration(XMPPTCPConnection.java:619)
08-20 20:42:00.447 27072-27107/com.example.portalejabberddemo W/System.err: at org.jivesoftware.smack.tcp.XMPPTCPConnection.connectInternal(XMPPTCPConnection.java:902)
08-20 20:42:00.447 27072-27107/com.example.portalejabberddemo W/System.err: at org.jivesoftware.smack.AbstractXMPPConnection.connect(AbstractXMPPConnection.java:383)
08-20 20:42:00.447 27072-27107/com.example.portalejabberddemo W/System.err: at com.example.portalejabberddemo.MainActivity.test(MainActivity.java:94)
08-20 20:42:00.447 27072-27107/com.example.portalejabberddemo W/System.err: at com.example.portalejabberddemo.MainActivity.access$000(MainActivity.java:33)
08-20 20:42:00.447 27072-27107/com.example.portalejabberddemo W/System.err: at com.example.portalejabberddemo.MainActivity$1.doInBackground(MainActivity.java:57)
08-20 20:42:00.447 27072-27107/com.example.portalejabberddemo W/System.err: at com.example.portalejabberddemo.MainActivity$1.doInBackground(MainActivity.java:53)
08-20 20:42:00.447 27072-27107/com.example.portalejabberddemo W/System.err: at android.os.AsyncTask$2.call(AsyncTask.java:295)
08-20 20:42:00.447 27072-27107/com.example.portalejabberddemo W/System.err: at java.util.concurrent.FutureTask.run(FutureTask.java:237)
08-20 20:42:00.448 27072-27107/com.example.portalejabberddemo W/System.err: at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234)
08-20 20:42:00.448 27072-27107/com.example.portalejabberddemo W/System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
08-20 20:42:00.448 27072-27107/com.example.portalejabberddemo W/System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
08-20 20:42:00.448 27072-27107/com.example.portalejabberddemo W/System.err: at java.lang.Thread.run(Thread.java:818)
【问题讨论】: