Bonjour,
mon problème tourne autour l'envoi de messages depuis et vers la socket..
ce que je veux obtenir est qu'à chaque envoi de message depuis une console dos vers mon serveur, ce dernier me renvoie "message reçu"..
mais, je n'obtient cette résultat que seulement pour le premier message..
voici le code:
et voici un imprime écran pour bien voir le problème..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 public void run() { try{ soc = ser.accept(); jta.append("["+new Date(DateFormat.LONG)+"]>Connection acceptée via le port--> "+soc.getPort()+"\r\n"); jta.append("["+new Date(DateFormat.LONG)+"]>Le client: "+InetAddress.getLocalHost().getHostAddress()+"est connecté\n\n"); jta.setCaretPosition(jta.getText().length()); jScrollPane1.validate(); out = new PrintWriter(soc.getOutputStream()); out.println("-Bonjour > "+InetAddress.getLocalHost().getHostAddress()+"\nVous êtes connecté\n"); out.flush(); in = new BufferedReader(new InputStreamReader(soc.getInputStream())); line = in.readLine(); out.println("-Message reçu\n"); out.flush(); jta.append(line); while ((line = in.readLine()) != null) { jta.append(line+"\n"); jta.setCaretPosition(jta.getText().length()); jScrollPane1.validate(); if(line.equals("exit")) { try { out.println("Au revoir "+InetAddress.getLocalHost().getHostAddress()+"\nvous êtes déconnecté"); out.flush(); soc.close(); jta.append("["+new Date(DateFormat.LONG)+"]>"+"SOCKET IS CLOSED >>> CONNECTION IS AVAILABLE\n\n"); jta.setCaretPosition(jta.getText().length()); jScrollPane1.validate(); } catch(IOException e) {} } out.close(); } }catch (Exception e) {}
je vous remercie d'avance
Partager