java - Atmosphere 框架,BroadcasterFactory.getDefault() 替代方案

标签 java websocket atmosphere

我正在使用 Atmosphere 框架,它在库的最新版本中查找方法: BroadcasterFactory.getDefault() 已删除。 (这个方法基本上到处都在使用,我找不到如何使用新“方式”的例子)

javadoc 声明:

 @deprecated Use {@link org.atmosphere.cpr.AtmosphereConfig#resourcesFactory()}

但是,我找不到关于如何让 AtmosphereConfig 能够获取 resourceFactory(这是一个实例方法)的文档。

有人可以告诉我如何获取配置 .. 或我可以从中获取配置的 AtmosphereFramework 对象本身或任何 up2date 示例吗?

最佳答案

不确定是否有效,但尝试获取 ServletContext 并使用 getAttribute(AtmosphereFramework.class.getName()) 获取 AtmosphereFramework .如果您使用的是 Spring,请尝试直接 Autowiring AtmosphereFramework。

您还可以从 AtmosphereResource 获取 BroadcasterFactory,然后查找 Broadcaster,例如:

private String path;

private BroadcasterFactory broadcasterFactory;

@Ready(value = Ready.DELIVER_TO.ALL)
public void onReady(final AtmosphereResource r) {

    System.out.println("onConnect");

    r.addEventListener(new AtmosphereConnectionController());

    if(broadcasterFactory == null){
        path = r.getBroadcaster().getID();
        broadcasterFactory = r.getAtmosphereConfig().getBroadcasterFactory();
    }
}
//later in code
broadcasterFactory.lookup(path).broadcast("message");

关于java - Atmosphere 框架,BroadcasterFactory.getDefault() 替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24379709/

相关文章:

java - 如何用 Spring Boot 安全功能替换 Basic auth?

ubuntu - 在 Ubuntu 11.10 上安装 IDEA

java - Java Web套接字服务器

java - 如何将更新推送到 Primefaces 图表?

java - onStateChange 在 Atmosphere 框架中被多次调用

Java - 在运行时检测内存交换

java - 如何检测用户是否通过红十字关闭窗口?

使用 libtomcrypt 计算 websocket Sec-WebSocket-Accept 值

php - Pusherapp 库

java - UserRepository 在 @Autowired 中返回 null