这可能看起来是一个非常基本的问题,但我在使用此代码访问OpenFire搜索功能时遇到问题:
try {
UserSearchManager search = new UserSearchManager(connection.getConnection());
Form searchForm = search.getSearchForm("search." + server);
...
} catch (Exception e) {...}
此处的服务器是一个字符串,其值类似于“192.168.242.132”,代码从此行获取错误:Form searchForm = search.getSearchForm("search." + server);
基本上,服务器已启动并正在运行,因为我可以创建帐户和登录/注销。
我认为问题在于“server”字符串值。以前有人遇到过这种问题吗?
编辑:我已经在/ etc / hosts中添加了解析到myelastix-local.com的IP地址但仍然遇到同样的问题,它可以访问create / login api但搜索仍然无效。我是否还必须修改openfire服务器设置?答案 0 :(得分:1)
您确定可以使用IP拨打getSearchForm()
吗?尝试提供组件ID,通常类似于"search.jabberserver.tld"
答案 1 :(得分:1)
这就是我的所作所为:
Form searchForm = search.getSearchForm("search." + connection.getServiceName());
连接是XMPPConnection。