2009-08-04 5 views
3

Je suis en train de créer un serveur de socket basé sur Java NIO en utilisant Apache Mina. J'ai vraiment besoin de connaître le port de l'hôte distant, pas seulement l'adresse IP, et il semble que Mina expose uniquement un objet SocketAddress (qui peut être converti en InetAddress). Je peux obtenir l'adresse IP de InetAddress, mais j'utilise normalement Socket.getPort() pour obtenir le numéro de port, mais Mina semble obscurcir ces objets de bas niveau. Y a-t-il un autre moyen? Merci!Java: Comment puis-je obtenir le port connecté à partir d'un InetAddress?

Répondre

6

J'ai une vraie ancienne version, mais cela a fonctionné pour moi,

public int getPort(SocketAddress address) { 
    return ((InetSocketAddress) address).getPort(); 
}