ユーザーがルームを退室する際に、 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);
}
}
}