XMPP サーバーを使用してチャット アプリケーションを作成しています。すべてが大丈夫で、他の人とチャットできます。しかし、今度は、XMPPサーバーからすべてのユーザー名を表示したいと思います。だから私は「UserSearchManager」クラスを使用しています。
ユーザーにログインしてチャットできることがわかりました。しかし、「 service-unavailable(503) 」というエラーが発生しました。
これは私のコードです:-
String host = "115.xxx.xxx.xxx";
String port = "5222";
String service = "115.xxx.xxx.xxx";
String username = "rawat";
String password = "rawat";
// Create a connection
ConnectionConfiguration connConfig =
new ConnectionConfiguration(host, Integer.parseInt(port),service);
connConfig.setSASLAuthenticationEnabled(true);
connection = new XMPPConnection(connConfig);
try {
connection.connect();
Log.i("XMPPClient", "[SettingsDialog] Connected to " + connection.getHost());
} catch (XMPPException ex) {
Log.e("XMPPClient", "[SettingsDialog] Failed to connect to " + connection.getHost());
Log.e("XMPPClient", ex.toString());
xmppClient.setConnection(null);
}
try {
UserSearchManager search = new UserSearchManager(connection);
connection.login(username, password);
Log.i("XMPPClient", "Logged in as " + connection.getUser());
// Set the status to available
Presence presence = new Presence(Presence.Type.available);
connection.sendPacket(presence);
xmppClient.setConnection(connection);
Form searchForm = search.getSearchForm("search."+connection.getServiceName());
Form answerForm = searchForm.createAnswerForm();
answerForm.setAnswer("Username", true);
answerForm.setAnswer("search", "test");
org.jivesoftware.smackx.ReportedData data = search.getSearchResults(answerForm,"search."+connection.getServiceName());
System.out.println("data are "+data);
---- この行 ---
Form searchForm =
search.getSearchForm("search."+connection.getServiceName());
Nullポインタ例外を教えてください。
専門家が見てください。タイミングをありがとう。