这个问题与大气框架有关。
我正在尝试在任何事件发生时(即通知)向客户广播消息。 我无法让Hazelcast广播公司将数据从服务器发布到cliens。我尝试使用以下hazelcast广播公司实施(atmosphere-hazelcast-2.3.0-RC5.jar)。
当放入类路径时,Atmosphere会自动检测大气 - hazelcast-2.3.0-RC5.jar文件。当我启动Tomcat 7时,Hazelcast实例正常启动。
但是一旦调用factory.lookup(uniqueId)来查找主题广播消息,我就会得到以下异常:
线程“Thread-3”中的异常java.lang.IllegalStateException:无效的查找类org.atmosphere.plugin.hazelcast.HazelcastBroadcaster。缓存类是:org.atmosphere.cpr.DefaultBroadcaster
我收到广播公司的对象如下:
AtmosphereFramework framework = (AtmosphereFramework) getServletContext().getAttribute("AtmosphereServlet");
BroadcasterFactory bf = framework.getBroadcasterFactory();
Broadcaster b = bf.lookup(uniqueId);
这是将广播公司置于简单的servlet中还是必须使用@Inject注入广播公司的正确方法? (如果是简单的servlet,我不知道如何使用@Inject注入广播公司。)
请注意,如果我不使用HazelcastBroadcaster,则factory.lookup(uniqueId)调用运行良好(使用默认广播器)并将消息发送到客户端。
有人遇到类似的问题吗?会批评任何指针来解决这个问题。
谢谢!
答案 0 :(得分:0)
使用2.3.x-RCx看起来像是一个错误。请提交问题https://github.com/Atmosphere/atmosphere
- Jeanfrancois