我在连接服务器中的支持中心时遇到问题。 我正在使用connection.connect()方法连接到服务器,但是它带有null返回值。 在这里它是一个负责启动应用程序端与服务器连接的方法,对我来说,出现了空指针异常返回。 也许这是一个简单的问题,但是我是一名新程序员,所以...
System.out.print("login (user@domain):");
username = scanner.nextLine();
validateUsernameAndDomain();
System.out.print("password: ");
password = scanner.nextLine();
if(!connect()){
System.out.println("Error here!!!");
return false;
}
afterConnected();
sendMessageLoop();
return true;
}
private boolean connect() {
try {
configBuilder
.setUsernameAndPassword(username, password)
.setResource("desktop")
.setXmppDomain(domain)
.setHost(domain);
connection = new XMPPTCPConnection(configBuilder.build());
connection.setReplyTimeout(5000);
//System.out.println(connection.getStreamId());
chatManager = ChatManager.getInstanceFor(connection);
try{
connection.connect();
}catch(XMPPException xmppe){
System.err.println("Error on level protocol: "+xmppe);
}
chatManager.addIncomingListener(this);
System.out.println("Successful connected on XMPP server");
} catch (SmackException | IOException | InterruptedException e) {
System.out.println("Error : "+e.getMessage());
return false;
}
roster = Roster.getInstanceFor(connection);
Roster.setDefaultSubscriptionMode(Roster.SubscriptionMode.accept_all);
return login();
}