как я могу отправить сообщение с сервера клиенту с помощью Netty? Я знаю, что вы можете сделать это, какNetty IO отправить сообщение клиенту
for (Channel c : channels1) {
c.writeAndFlush("TEXT \r\n");
}
но можно использовать только внутри ChatServerHandler класса. Есть ли способ отправки сообщений клиенту или как я могу сделать метод, который я могу назвать, например,
sendMessageToServer("MESSAGE");
void sendMessageToServer(String message) {
final ChannelGroup channels = new DefaultChannelGroup(GlobalEventExecutor.INSTANCE);
for (Channel c : channels) {
c.writeAndFlush("TEXT \r\n");
}
}
? Если я получаю каналы, как в ChatServerHandler с помощью
final ChannelGroup channels = new DefaultChannelGroup(GlobalEventExecutor.INSTANCE);
Я получаю размер канала 0.
У меня уже есть метод channelAdded, и я добавляю каналы в группу, и после того, как клиент подключается, группа имеет размер 1, но я не знаю, как использовать его для получения каналов для отправки сообщения. Невозможно получить доступ к каналу ChannelGroup извне, потому что я получаю статическую ошибку или что-то в этом роде. – Broadwell
Вот что я сказал. Вам нужно сделать свою «ChannelGroup» общедоступной. Попытайтесь сделать его «public static», чтобы вы могли получить к нему доступ напрямую. 'public static ChannelGroup channels = new DefaultChannelGroup (GlobalEventExecutor.INSTANCE);' – Jeremy