ByteBuffers and channels deal only with arrays of bytes, they have no conception of things like ObjectStreams. Sending a serialized object graph over an NIO channel is no different than sending any other chunk of bytes. You just need to obtain the bytes representing your serialized object and write it to the channel. Here are two ways to do so:
In the first case, you've got the encoded object graph in a ByteBuffer instance and could do other things with it if you like. The second uses a utility adapter class which will handle the conversion from stream to channel for you.
oh many thanks i dident get that one could do chaining with nio this was nice because im after the non blockable read/write methods in nio. im doing a little server/client progg.so i thougth that it would be nice with nio thanks !