2014-06-18 68 views
1

我在Netty中創建了一個PoC來發送和接收Java對象。我發送的是客戶端處理程序初始化時創建的對象。如何發送我在運行時創建的對象,或者如何發送將對象發送到Netty服務器的發送方法?通過Netty動態發送自定義對象

我剛剛複製我的客戶端處理程序代碼。這裏我在構造函數中創建播放器對象。如果我在創建clientHandler對象後創建播放器對象,我該如何發送此對象?

公共類ObjectEchoClientHandler擴展ChannelInboundHandlerAdapter {

private Player player; 

/** 
* Creates a client-side handler. 
*/ 
public ObjectEchoClientHandler() { 

    player = new Player("Neymer","Brazil",10); 

} 

@Override 
public void channelActive(ChannelHandlerContext ctx) { 
    // Send the first message if this handler is a client-side handler. 
    ctx.writeAndFlush(player); 
} 

@Override 
public void channelRead(ChannelHandlerContext ctx, Object msg) { 
    // Echo back the received object to the server. 
    ctx.write(msg); 
} 

@Override 
public void channelReadComplete(ChannelHandlerContext ctx) { 
    ctx.flush(); 
} 

@Override 
public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) { 
    cause.printStackTrace(); 
    ctx.close(); 
} 

}

任何幫助,將不勝感激。提前致謝。

問候, Bibin

回答

1

你只想用Channel.writeAndFlush(yourObject)?

+0

在哪個方法? – Thufir