服务端openfire数据可以通过LDAP来同步已经存在的完整用户信息。
客户端连接服务端后,对应查找用户并得到用户信息保存。
具体代码如下:
public PersonalPanel() {
initPerson();//初始化
setLayout(new GridBagLayout());
JLabel firstNameLabel = new JLabel();
firstNameField = new JTextField();
ResourceUtils.resLabel(firstNameLabel, firstNameField, Res.getString("label.first.name") + ":");
if(null==firstNameField.getText()||"".equals(firstNameField.getText())){
setRealUserName(realUserName);
firstNameField.setEditable(false);
}
如果用户名称模板为空,查找用户名
void initPerson(){
positions = CommonProfile.getPosition(jobTitleField.getText());//职称
sex = CommonProfile.getSex(sexField.getText());
realUserName = GetUserRealName();//查找用户名方法
}
查找用户名方法(相当于搜索用户)
private String GetUserRealName() {
final String byname = SparkManager.getSessionManager().getJID().substring(0, SparkManager.getSessionManager().getJID().indexOf("@"));//得到JID前缀
final Collection<String> _usersearchservice = SearchManager.getInstance()
.getSearchServicesAsString();//得到服务器名称
String name = null;
try {
for (String search : _usersearchservice) {
ReportedData data;
UserSearchManager usersearchManager = new UserSearchManager(
SparkManager.getConnection());
Form f = usersearchManager.getSearchForm(search);
Form answer = f.createAnswerForm();//设置搜索条件
answer.setAnswer("Name", true);
answer.setAnswer("Email", true);
answer.setAnswer("Username", true);
answer.setAnswer("search", byname);
data = usersearchManager.getSearchResults(answer, search);
ArrayList<String> columnnames = new ArrayList<String>();
Iterator<Column> columns = data.getColumns();
while (columns.hasNext()) {
ReportedData.Column column = (ReportedData.Column) columns
.next();
String label = column.getLabel();
columnnames.add(label);
}
Iterator<Row> rows = data.getRows();
if (rows.equals("") || rows == null) {
JOptionPane.showMessageDialog(null,
Res.getString("title.user.not.exists"));
}
while (rows.hasNext()) {
ReportedData.Row row = (ReportedData.Row) rows.next();
if(row.getValues(columnnames.get(1)).hasNext()){
if (row.getValues(columnnames.get(2)).hasNext()&&byname.equals(row.getValues(columnnames.get(1)).next())) {
name = (String) row.getValues(columnnames.get(2)).next();//得到具体用户名
}
}
}
}
} catch (Exception e) {
}
return name;
}
分享到:
相关推荐
大数据Spark二次开发.pdf
spark-2聊天客户端,可二次开发,可通过openfire一起使用,
docker-spark, 通用 Apache Spark 客户端的Docker 映像 客户端 Docker 映像 这个存储库包含一个运行的 Docker 映像。要运行简单的spark shell 插件,请执行以下操作:docker run -it epahomov/docker-spark:lightwe
是openfire的spark 不是大数据的下载的请注意,内容包括spark最新源码以及二次开发入门教程
大数据资料PPT Spark(二次开发篇) Hive(二次开发篇) HBase(二次开发篇 HDFS(二次开发篇)
spark+openfire二次开发,包括配置基本插件实现等等
flex sparkweb 客户端输入服务器地址、用户名和密码可登录openfire
spark+openfire二次开发文档
富客户端spark2.8.3_windows,在国内从官网的下载速度极慢,有需要的朋友,可以从这里下载
NULL 博文链接:https://huxj62488.iteye.com/blog/617826
spark 源码工程部署缺少的3个jar包
hive-on-spark客户端
Spark连接Tigase服务器,完整的步骤,很清晰的看到。大家可以参考。
spark-mqtt-sample 使用Spark Streaming的简单MQTT客户端
本次项目是基于企业大数据经典案例项目(大数据日志分析),全方位、全流程讲解 大数据项目的业务分析、技术选型、架构设计、集群规划、安装部署、整合继承与开发和web可视化交互设计。
一个完善的Spark Streaming二次封装开源框架,包含:实时流任务调度、kafka偏移量管理,web后台管理,web api启动、停止spark streaming,宕机告警、自动重启等等功能支持,用户只需要关心业务代码,无需关注繁琐的...
收集的Spark快速大数据开发Demo,非常不错的学习资料。
现在,存在另一个与Java中的Spark作业服务器进行通信的选项,即Spark-Job-Server-Client,它是Spark Job Server的Java客户端,实现了已安排的Rest API。 Spark-Job-Server-Client是Apache许可v2下的...
在自己的机器上配置spark的本地开发模式,可以用来测试spark代码是否正确,如果没问题,可以提交到spark集群上去运行,免去每次都要打包放到集群上去测试的麻烦。因为在网络上没找到合适的资源可以快速构建,所以就...
最近在做的一个openfire+spark二次开发的项目,要求聊天界面的显示效果要像qq一样,消息有气泡,收到的消息在左侧,发出的消息在右侧,网上相关的资料很少。该文档是修改过的聊天记录的显示窗口的Java类,目前只修改...