簡體   English   中英

我的Netty客戶端程序未從服務器收到任何響應

[英]My netty client program is not receiving any response from server

我使用netty IO編寫了一個客戶端-服務器程序,在其中我可以向服務器發送消息,並且服務器可以響應,但是不幸的是,我的Client Handler類中的任何偵聽器方法都沒有被調用,即.. response not在客戶層收到的回復。 這是客戶端中用於向服務器發送請求消息的代碼。

ChannelFuture cf =this.ctx.channel().writeAndFlush(Unpooled.copiedBuffer(getEchoISOMessage(), CharsetUtil.ISO_8859_1));
this.ctx.writeAndFlush(Unpooled.EMPTY_BUFFER);
cf.awaitUninterruptibly();
if (!cf.isSuccess()) {
    System.out.println("Send failed: " + cf.cause());
} 

以下是用於從服務器接收任何響應消息的代碼。

 @Override
public  void ChannelRead(ChannelHandlerContext ctx, ByteBuf in)
{
    System.out.println("Received a response from Server..");
    String responseMessage="";
    responseMessage=in.toString(CharsetUtil.ISO_8859_1);
    System.out.println("Received data as echo response"+responseMessage+"from "+ctx.channel().remoteAddress());

}

但是這種方法根本沒有被調用。

您的管理員從何而來? 如果要從服務器接收響應,則它應該是入站處理程序。 您確定代碼使用@Override注釋編譯嗎? ChannelInboundHanlder的回調方法是public void void channelRead(ChannelHandlerContext ctx, Object msg) 確保使用@Override進行注釋,並確保代碼可以編譯。 然后,您的客戶端將/應該從服務器收到響應。 如果沒有幫助,請考慮共享完整代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM