Hallo,
ich möchte eine TcpClient-Server Verbindung aufbauen. Das Problem ist jetzt erstmal in der TcpServer Klasse.
Ich muss natürlich noch den Thread terminieren und die Socket-Verbindung auch, aber eins nach dem anderen. Nun ist es so, dass running und .start() rot unterstrichen werden. Zu running: Dort steht change running to static und bei .start() steht "The method start() is undefined for the type TcpClient"...
Ich bin gerade mega verwirrt, weil ich das zum ersten Mal mache... Kann mir jemand einen guten Hinweis geben? Ziel ist es ja letztendlich, dass sich mehrere Clients im Server "einloggen" können
ich möchte eine TcpClient-Server Verbindung aufbauen. Das Problem ist jetzt erstmal in der TcpServer Klasse.
Java:
public class TcpServer extends Thread {
private static int PORT = 12345;
private static String UTF8_CHARSET = "UTF-8";
AtomicBoolean running = new AtomicBoolean(true);
public static void main(String[] args) throws IOException {
ServerSocket serverSocket = new ServerSocket(PORT);
System.out.println("TcpServer listening on port " + PORT);
while (running) {
Socket clientSocket = serverSocket.accept();
TcpClient t = new TcpClient() {
public void run() {
System.out.println(" connected to " + clientSocket.getInetAddress()
.getHostName()
+ " (" + clientSocket.getInetAddress()
.getHostAddress()
+ ")");
System.out.println(" local port: " + clientSocket.getLocalPort());
System.out.println(" remote port: " + clientSocket.getPort());
try (BufferedReader in = new BufferedReader(
new InputStreamReader(clientSocket.getInputStream(), Charset.forName(UTF8_CHARSET)));
PrintWriter out = new PrintWriter(new OutputStreamWriter(clientSocket.getOutputStream(),
Charset.forName(UTF8_CHARSET)), true)) {
out.println("Welcome, client! I'll translate your input to uppercase :-)");
for (String line = in.readLine(); line != null; line = in.readLine()) {
out.println(line.toUpperCase());
}
System.out.println("Client closed connection.");
}
catch (IOException e) {
e.printStackTrace();
}
}
};
t.start();
}
}
}
Ich bin gerade mega verwirrt, weil ich das zum ersten Mal mache... Kann mir jemand einen guten Hinweis geben? Ziel ist es ja letztendlich, dass sich mehrere Clients im Server "einloggen" können