Bonjour,
J'ai un client et un serveur qui communique ensemble au travers d'une socket et d'un ObjectInput/OutputStream.
Tout ce passe bien pour la communication sauf une petite chose.
La serveur envoie un objet ACK sur la socket et le client le réceptionne bien.
Par contre lorsque le serveur renvoie une 2eme ACK, le client ne recoit que le premier. C'est assez contraignant.
Voici le code:
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
39
40
41
42
43
44
45
46
47 public class SendReceive { protected ObjectInputStream ois; protected ObjectOutputStream oos; Socket socket; public SendReceive() { ois = null; oos = null; } public SendReceive(Socket socket) throws IOException { ois = new ObjectInputStream(socket.getInputStream()); oos = new ObjectOutputStream(socket.getOutputStream()); } public void envoie(Object msg) throws IOException { oos.writeObject(msg); oos.flush(); } public Object receive() throws IOException, ClassNotFoundException { Object b = new Object(); b = ois.readObject(); return b; } public void setStream(Socket socket) //throws IOException { try { oos = new ObjectOutputStream(socket.getOutputStream()); ois = new ObjectInputStream(socket.getInputStream()); } catch (IOException ex) { Logger.getLogger(SendReceive.class.getName()).log(Level.SEVERE, null, ex); } } } Merci d'avance Julien
Partager