как определить порт сервера в MINA - PullRequest
0 голосов
/ 19 июля 2011

в моем приложении у меня есть сервер, который прослушивает более одного порта udp.я использовал MINA в этом приложении.

// code looks like this.
NioDatagramAcceptor acceptor = new NioDatagramAcceptor();
...
...
acceptor.bind(new InetSocketAddress(9911));
acceptor.bind(new InetSocketAddress(9912));

теперь в обработчике, когда я получаю данные, у меня следующий код.

@Override
public void messageReceived(IoSession session, Object message)
        throws Exception {
    if (message instanceof IoBuffer) {
        String msg = "data received in port "+ <NEED TO GET THE PORT NO>;
        System.out.println(msg);
    }
}

в коде я понятия не имею, как получить портнет (9911 или 9912 в данном случае), в котором данные получены.

заранее спасибо.

1 Ответ

1 голос
/ 19 июля 2011

Ссылка: http://mina.apache.org/report/trunk/apidocs/org/apache/mina/core/session/IoSession.html

@Override
public void messageReceived(IoSession session, Object message)
    throws Exception {
if (message instanceof IoBuffer) {
    InetSocketAddress inetSocketAddress = (InetSocketAddress) session.getServiceAddress();
    int portNumber = inetSocketAddress.getPortNumber();
    String msg = "data received in port "+ portNumber;
    System.out.println(msg);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...