我们正在尝试处理一个场景,当用户退出房间时,我们使用MetaBroadcaster向所有房间发送消息。我们通过AtmosphereGwtHandler的覆盖广播方法实现了此功能。
当我们在开发模式下测试时,该功能很好,但是当我们在Jetty8生产模式下测试它时,按日志告诉,覆盖方法是void,永远不会被调用。
所以任何人都知道它有什么问题,或者我们是否有更好的解决方案。 这是我们的代码片段:
public class ChatHandler extends AtmosphereGwtHandler {
...
@Override
public void broadcast(Object message, GwtAtmosphereResource resource) {
MsgType msgtype=((ChatMessage)message).getMsgtype();
if(msgtype==MsgType.Broad){
MetaBroadcaster.getDefault().broadcastTo(((ChatMessage)message).getChanel(), message);
System.out.println("Doing to all room);
}else{
super.broadcast(message, resource);
System.out.println("Doing to myself);
}
}
}
答案 0 :(得分:0)
无法真正回答所提供的信息。
您在哪里配置了处理程序? web.xml或atmosphere.xml
你在使用Meteor / Atmosphere的servlet是什么? 什么版本的大气?