Implementieren Sie einen Chat-Server und einen Chat-Client, die über TCP/IP miteinander kommunizieren. Der Server soll mehrere Clients gleichzeitig bedienen können. Der Client soll eine einfache Benutzeroberfläche haben, über die der Benutzer Nachrichten an den Server senden kann. Der Server soll die Nachrichten an alle verbundenen Clients.
- Der Server soll mehrere Clients gleichzeitig bedienen können.
- Der Server soll die Nachrichten an den vorgesehenen verbundenen Client weiterleiten.
- Der Client soll eine Benutzeroberfläche haben, über die der Benutzer Nachrichten an den Server senden kann, mit einem Target-Client.
- Der Client soll die Nachrichten von anderen Clients empfangen und anzeigen können.
- Gruppen von Clients erstellen und Nachrichten an Gruppen senden.
- Foto von Client an Server senden, dann verteilen.
Der Client empfängt auf seinem Standart-UDP-Port Server-IP und TCP-Port und übernimmt diese. Nach der optionalen Auswahl eines Profilbildes wird die Verbindung initiiert.
Der Server wird mit dem Befehl
java -jar .\server-1.0.jar
gestartet.
Der Client wird mit dem Befehl
java --module-path "C:\Users\<Userdir>\.m2\repository\org\openjfx\javafx-controls\21.0.5\javafx-controls-21.0.5-win.jar;C:\Users\<Userdir>\.m2\repository\org\openjfx\javafx-graphics\21.0.5\javafx-graphics-21.0.5-win.jar;C:\Users\<Userdir>\.m2\repository\org\openjfx\javafx-base\21.0.5\javafx-base-21.0.5-win.jar" --add-modules javafx.controls,javafx.graphics,javafx.base -jar .\client-1.0.jar
gestartet.
- Der Client vergisst einmal angezeigte Nachrichten. Nach einem Wechsel sollen sie erhallten bleiben.
- Wird der Name oder die Server-IP oder der Server-Port aktualisiert muss sich der Client mit dem neuen Namen/Server neu verbinden (Button: "↺")