AnsweredAssumed Answered

How can I use smack api to search for user with Cisco Jabber Server?

Question asked by Phuong on Apr 28, 2015

I currently have trial Cisco Jabber 9.0.x server, I would like to use smack api to create an application (similar to spark, but not exactly the same) to let user login to Cisco Jabber. I got most of features working like presence, send message, add contact, add group,... However, I have an issue with search, here is my implementation for searching:


     if (_connection == null || !_connection.isConnected()) return;


     HashMap<String, String> user = null;

     List<HashMap<String, String>> result = new ArrayList<HashMap<String, String>>();



         String searchService = "search." + _connection.getServiceName();

         UserSearch userSearch = new UserSearch();

         UserSearchManager usm = new UserSearchManager(_connection);

         Collection<String> searchServices = usm.getSearchServices();     //EMPTY SEARCH SERVICES
 -> {



         Form searchForm = usm.getSearchForm(searchService);     //THROWS EXCEPTION ON THIS CALL

         Form answerForm = searchForm.createAnswerForm();

         answerForm.setAnswer("Username", true);

         answerForm.setAnswer("search", userName);

         ReportedData data = userSearch.sendSearchForm(_connection, answerForm, searchService);


         for (Row row : data.getRows())


             user  = new HashMap<String, String>();

             user.put("Username", row.getValues("Username").toString());




     catch(Exception ex)





Note: I used spark to login to Cisco Jabber and it could not search!


Any help is very appreciated!