cs_aymoun11
Messages postés9Date d'inscriptionmardi 26 août 2008StatutMembreDernière intervention12 septembre 2008
-
8 sept. 2008 à 15:15
sheorogath
Messages postés2448Date d'inscriptionsamedi 21 février 2004StatutModérateurDernière intervention29 janvier 2010
-
9 sept. 2008 à 12:22
je suis entrain de développer un serveur java qui accepte des message dans des des buffer envoyé par des différent client ,
le probléme que je trouve que lors de l'exécution de code il m'envoie direct au catch de système voici le code de run():
try {
ObjectOutputStream out = new ObjectOutputStream(
socket.getOutputStream());
ObjectInputStream in = new ObjectInputStream(
socket.getInputStream());
BufferedReader plec = new BufferedReader(
new InputStreamReader(in)
);
while(true) {
String C=plec.readLine();
System.out.println(C);
}
} catch(Throwable t) {
System.out.println("Caught " + t + " - closing thread");
}
}
et moi je cherche a récupéré des message de différent client et les affiché
cs_aymoun11
Messages postés9Date d'inscriptionmardi 26 août 2008StatutMembreDernière intervention12 septembre 2008 8 sept. 2008 à 17:32
ok
voici tout le code:
public class Server {
public static final int PORT = 4444;
public Server(int port) throws IOException {
ServerSocket ss = new ServerSocket(port);
while(true) {
new ServerThread(ss.accept());
}
}
private class ServerThread extends Thread {
private final Socket socket;
public ServerThread(Socket socket) {
this.socket = socket;
start();
}
public void run() {
try {
ObjectOutputStream out = new ObjectOutputStream(
socket.getOutputStream());
ObjectInputStream in = new ObjectInputStream(
socket.getInputStream());
BufferedReader plec = new BufferedReader(
new InputStreamReader(in)
);
while(true) {
String C=plec.readLine();
System.out.println(C);
out.flush();
out.reset();
}
} catch(Throwable t) {
System.out.println("Caught " + t + " - closing thread");
}
}
}
public static void main(String[] args) throws IOException {
new Server(PORT);
}
}
Vous n’avez pas trouvé la réponse que vous recherchez ?
public ServerThread(Socket socket) {
this.socket = socket;
this.out = new ObjectOutputStream(
socket.getOutputStream());
this.in = new ObjectInputStream(
socket.getInputStream());
this.plec = new BufferedReader(
new InputStreamReader(in));
}
public void run() {
try {
while(true) {
String C = this.plec.readLine();
System.out.println(C);
this.out.flush();
this.out.reset();
}
} catch(Throwable t) {
System.out.println("Caught " + t + " - closing thread");
}
}
}
Je te laisse rassembler le tout...
genre tu vois le final dans le socket je l'ai pas vu de suite mais c'est une erreur...
tu peux declarer une variable final lorsque tu l'initialise a la declaration sauf erreur de ma part
"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"