我不确定我想要的是否可能,但仍然......我想在用户之间共享数据,就像在这里做的那样。但是,与ApplicationScope
用于共享数据的此示例不同,我希望数据不是在所有用户之间共享,而仅用于用户组(例如私人聊天室,而不是该示例中的公共空间)。目前我使用ViewScope
但为了更新参与者的显示,使用我在这里找到的 hack ,但这个解决方案不是很稳定,因为它偶尔会抛出 JS 错误。我的问题有什么合理的解决方案吗?干杯,埃雷兹
问问题
110 次
1 回答
2
将它们保存在Map
应用程序范围的 bean 中,其中映射键是组标识符。
例如
@ManagedBean
@ApplicationScoped
public class ChatManager {
private Map<Group, Room> rooms;
// ...
}
和
@ManagedBean
@ViewScoped
public class GroupChat {
@ManagedProperty("#{chatManager.rooms[user.group]}")
private Room room;
// ...
}
于 2012-04-06T01:57:23.543 回答