Hi,
i was trying this
test code given below, for transfer of objects thru NIO Channels..
Everything working fine but at the point when i try to create a ObjectOutputStream ...using the SocketChannel ... i get an error saying ::->
java.nio.channels.IllegalBlockingModeException .
i really dont understand why this happens ...
is there any thing wrong that i am doin?.....
Please Help Me ....
Thanks A Lot
regards
Merwin
---------------------------------------------------------------------
HERE is the CODE
---------------------------------------------------------------------
import java.io.*;
import java.net.*;
import java.nio.*;
import java.nio.channels.*;
import java.util.*;
public class DateServerNIO {
static final int port = 1313;
void process() throws IOException {
ServerSocketChannel serverChannel = ServerSocketChannel.open();
serverChannel.socket().bind(new InetSocketAddress(port));
System.out.println("Socket bound");
Selector mux = Selector.open();
serverChannel.configureBlocking(false);
serverChannel.register(mux, SelectionKey.OP_ACCEPT);
System.out.println("Channel registered");
while (mux.select() > 0) {
Iterator keyIt = mux.selectedKeys().iterator();
while (keyIt.hasNext()) {
SelectionKey key = (SelectionKey) keyIt.next();
if (key.isAcceptable()) {
ServerSocketChannel server =(ServerSocketChannel) key.channel();
SocketChannel channel = server.accept();
if (channel != null) {
// channel.configureBlocking(false);
// channel.register (mux, SelectionKey.OP_READ);
ObjectOutputStream dateOut =new OutputStream
(Channels.newOutputStream (channel));
//Here is where the problem comes
dateOut.writeObject(new Date());
}
}
keyIt.remove();
}
}