Hey Forum!
Folgendes (sicherlich) triviales Problem, welches ich aber als Java-Neuling noch nicht lösen konnte. Vielleicht könnt ihr mir ja weiterhelfen.
Ich erstelle ein Server-Socket und verbinde mich dann mit telnet zu diesem Socket. Dann soll der Text, den ich in der telnet-Session eingebe im Textarea meines Java-Frames angezeigt werden.
Wenn ich jedoch ein Zeichen sende, dann wird das Fenster grau hinterlegt. So wie es aussieht, blockiert der Socket das Fenster. Ich müsste also mit Threads arbeiten, richtig?
Aber was pack ich nun wie in welchen Thread? Oder gibt es eine ganz andere Lösung, ohne Threads?
Danke für jede Antwort!
Tschau
Sandro
Folgendes (sicherlich) triviales Problem, welches ich aber als Java-Neuling noch nicht lösen konnte. Vielleicht könnt ihr mir ja weiterhelfen.
Ich erstelle ein Server-Socket und verbinde mich dann mit telnet zu diesem Socket. Dann soll der Text, den ich in der telnet-Session eingebe im Textarea meines Java-Frames angezeigt werden.
Code:
private void jButton1MouseClicked(java.awt.event.MouseEvent evt) {
socketErstellen();
}
private void socketErstellen() {
ServerSocket meinServer = null;
Socket clientSocket = null;
String hallo = null;
try {
meinServer = new ServerSocket(5000);
while(true) {
clientSocket = meinServer.accept();
DataInputStream in = new DataInputStream(clientSocket.getInputStream());
BufferedReader d = new BufferedReader(new InputStreamReader(in));
hallo = d.readLine();
TextArea1.append(hallo); // GEHT NICHT
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
Wenn ich jedoch ein Zeichen sende, dann wird das Fenster grau hinterlegt. So wie es aussieht, blockiert der Socket das Fenster. Ich müsste also mit Threads arbeiten, richtig?
Aber was pack ich nun wie in welchen Thread? Oder gibt es eine ganz andere Lösung, ohne Threads?
Danke für jede Antwort!
Tschau
Sandro