You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mina.apache.org by sishen <si...@gmail.com> on 2006/11/01 10:25:48 UTC

How to get the received message object?

public class ResultMessageHandler implements MessageHandler {
    public void messageReceived(IoSession session, Object message) throws
Exception {
        ResultMessage result = (ResultMessage)message;
        System.out.println("Message Received: ResultMessage");
    }
}

when i received the ResultMessage, i need to save it.

Now i use
session.setAttribute("result", result);
And in the client,
ResultMessage result = (ResultMessage)session.getAttribute("result");

But i don't know when the result message is done. I use
while (!session.containsAttribute("result"))
     ;
ResultMessage result = (ResultMessage)session.getAttribute("result");

But this has an problem, which is that when the server met an mistake, it
will block forever. I do not prefer this way.


I want to know whether there is a way to solve this problem.  I want to
return the message the server sent to me.

thx~