il y a t-il une solution pour écouter sur un port utilisé ?
Bonjour,
J'ai des données reçues sur mon serveur dans un certain port (dans mon cas 8600)
je veux faire quelques tests
alors j'utilise ce bout de code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| public static void main(String[] args) {
try{
InetAddress Address = InetAddress.getLocalHost();
ServerSocket ecoute = new ServerSocket(8600, 100, Address);
Socket service = (Socket) null;
while(true){
service = ecoute.accept();
InputStream is = service.getInputStream();
System.out.println("MSG : " + is.read());
service.close();
}
}catch(Exception e){
e.printStackTrace();
}
} |
et j'ai eu cette exception
Code:
1 2 3 4 5 6 7 8 9
|
java.net.BindException: Address already in use: JVM_Bind
at java.net.DualStackPlainSocketImpl.bind0(Native Method)
at java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:96)
at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:376)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:175)
at java.net.ServerSocket.bind(ServerSocket.java:376)
at java.net.ServerSocket.<init>(ServerSocket.java:237)
at testsocket.TestSocket.main(TestSocket.java:22) |
apparemment le port est utilisé par une autre application.
Il y a t-il une possibilité que je fait l'écoute des données sur ce port ?
y a t-il un bout de code qui peut réaliser le travail d'un sniffer, si ce que je dis est logique ?
mon but est de recevoir les données, de les adapter et de les insérer dans une base de données.
N.B : j'ai besoin que l'autre application qui utilise le port reste en marche pour le moment.
Je vous remercie.