smack问题 高手进 用户属性问题

honesty_aijf_88 2010-03-25 03:23:39
Openfire开发的smack库。
我用用户a1登录到Openfire后尝试添加一个用户b1,并且为b1设置了一些初始化的属性,调用的方法如下:
createAccount
public void createAccount(String username,
String password,
Map<String,String> attributes)
但是当我用b1登录后,获得XMPPConnection然后获得AccountManager,再调用AccountManager的String getAccountAttribute(String name) ,并没有获得相应添加该用户时设置的值。
虽然我尝试设置并获得API中提到的这些属性,如下
name -- the user's name.
first -- the user's first name.
last -- the user's last name.
email -- the user's email address.
但是 同样也没有获得到。
而且此方式明显不能修改相应的属性值,因为AccountManager中并没有提供修改相应属性值的方法。

我从Openfire的admin登录的界面中可以设置name和email属性,能获得。

我怀疑自己用错方式了,那用那个类那,希望做过此类问题的兄弟贴下代码。感激不尽。。。
...全文
143 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
weyson 2011-12-09
  • 打赏
  • 举报
回复

user.setName(accountManager.getAccountAttribute("name"));
user.setEmail(accountManager.getAccountAttribute("email"));


这样就可以获取到用户的注册信息
honesty_aijf_88 2010-03-25
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 honesty_aijf_88 的回复:]
刚才突然看到
org.jivesoftware.smack.packet.Packet
org.jivesoftware.smack.packet.IQ
org.jivesoftware.smack.packet.Registration

SET queries can be used to create accounts or update existing account info……
[/Quote]
哎,不行啊
honesty_aijf_88 2010-03-25
  • 打赏
  • 举报
回复
刚才突然看到
org.jivesoftware.smack.packet.Packet
org.jivesoftware.smack.packet.IQ
org.jivesoftware.smack.packet.Registration

SET queries can be used to create accounts or update existing account information.
组装一个Registration 然后调用con的sendPacket(Packet packet)方法。
应该是这样。哈哈试试。
虽然没有人帮我回答,但是发帖后思路好像清澈了许多,对自己赞一个~\(≧▽≦)/~
honesty_aijf_88 2010-03-25
  • 打赏
  • 举报
回复
自己顶下
  • 打赏
  • 举报
回复
没用过,友情

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧