On 4/17/07, Robin Batra <[EMAIL PROTECTED]> wrote:
I read the quick start guide for MINA on mina.apache.org and it stated:

import java.util.Date;
import org.apache.mina.common.IoHandlerAdapter;
import org.apache.mina.common.IoSession;

public class TimeServerHandler extends IoHandlerAdapter {
        public void exceptionCaught(IoSession session, Throwable t) throws 
Exception {
                t.printStackTrace();                            session.close();
        }

        public void messageReceived(IoSession session, Object msg) throws 
Exception {

                String str = msg.toString();
                if( str.trim().equalsIgnoreCase("quit"))
                        session.close();

                Date date = new Date();
                session.write( date.toString() );
                System.out.println("Message written...");
        }

        public void sessionCreated(IoSession session) throws Exception {
                System.out.println("Session created...");

                if( session.getTransportType() == TransportType.SOCKET )
                        ((SocketSessionConfig) session.getConfig() 
).setReceiveBufferSize( 2048 );

        session.setIdleTime( IdleStatus.BOTH_IDLE, 10 );
        }
}


in the code it is shown that a string object can be written using
session.write()
but when i try to to do so, it says
java.lang.IllegalStateException: Write requests must be transformed to class
org.apache.mina.common.ByteBuffer:

It seems like you didn't add a ProtocolCodecFilter.  Please check the
Main class in the quick start guide.

And one more question
can i write my custom objects into org.apache.mina.common.ByteBuffer and
send it using session.write();

Sure.  You will have to use a ProtocolCodecFilter.  Please refer to
SumUp example or HTTP server example in the documentation page.

Trustin
--
what we call human nature is actually human habit
--
http://gleamynode.net/
--
PGP Key ID: 0x0255ECA6
  • Query Robin Batra
    • Re: Query Trustin Lee

Reply via email to