2010-10-06 149 views
0

您好我正在使用smack.jar连接到我的Gmail服务器。但xmppconnection.connet()失败,它说服务器没有响应。我附上日志。请帮助我。XMPP服务器给出错误“服务器没有响应”

线程“main”中的异常连接失败。没有来自服务器的响应: at org.jivesoftware.smack.PacketReader.startup(PacketReader.java:164) at org.jivesoftware.smack.XMPPConnection.initConnection(XMPPConnection.java:945) at org.jivesoftware.smack。 XMPPConnection.connectUsingConfiguration(XMPPConnection.java:904) 在org.jivesoftware.smack.XMPPConnection.connect(XMPPConnection.java:1415) 在JabberSmackAPI.login(JabberSmackAPI.java:29) 在JabberSmackAPI.main(JabberSmackAPI.java: 79)

回答

1

要清楚,服务器没有返回此错误,因为您尚未连接到服务器。

这可能是一个配置问题。如果您的服务器没有客户端DNS SRV记录(例如_xmpp-client._tcp.gmail.com),那么您需要将XMPPConnection对象ConnectionConfiguration与要连接到的域名的机器名称一起传递。

这也可能是网络问题(连接,路由,防火墙等)。要测试此操作,请尝试在命令行上使用类似命令:

% dig +short _xmpp-client._tcp.gmail.com SRV 
5 0 5222 talk.l.google.com. 
20 0 5222 talk2.l.google.com. 
20 0 5222 talk1.l.google.com. 
20 0 5222 talk3.l.google.com. 
20 0 5222 talk4.l.google.com. 
% telnet talk.l.google.com 5222 
Trying 74.125.155.125... 
Connected to talk.l.google.com. 
Escape character is '^]'. 
> 

请注意,您键入的是大于号字符。大多数XMPP服务器现在都会立即断开连接,因为您发送的XML格式不正确。

如果你有一个网络问题,你会看到这样的事情:

Trying 74.125.155.125... 
telnet: connect to address 74.125.155.125: Connection refused 
telnet: Unable to connect to remote host 
+0

感谢您reply.Actually这是一个防火墙问题。 – SPB 2010-10-07 04:22:46

+0

谢谢!我遇到了同样的问题,它为我工作! – 2012-04-05 05:23:56

+0

@SPB,我知道它已经有一段时间了,但是你的防火墙问题是什么,因为我们间歇性地得到这个错误,一些聊天正在下降,并且服务器之间有一个防火墙。 – 2013-01-28 15:45:14