Chat Server starten über GUI problem

jalako

Mitglied
Hallo ich bins mal wieder,

Ich bin gerade dabei einen Chat zu schreiben. Auf meinem Server wird der Server ausgeführt und andere können dann den Clienten starten und da schreibe. Das funktioniert auch schon soweit, allerdings wollte ich jetzt ein kleines GUI machen um den Server zu starten bzw. zu stoppen, das klappt in geringen Maße. Problem ist: Wenn ich den "Start" Knopf drücke startet der Server zwar, jedoch freezt dann das GUI und ich kann nichts mehr daran rütteln sprich er ist so gesehen tot. Der Knopf ist gerade eingedrückt und ab dem Zeitpunkt geht nichts mehr, nicht mehr der "X" Knopf des GUI´s ich muss also über terminate alles schließen. Ich will aber natürlich noch den "Stop" Knopf bedienen was so natürlich nicht geht.

Code:

Java:
        JButton start = new JButton("Server starten");
        start.addMouseListener(new MouseAdapter(){
            @Override
            public void mouseClicked(MouseEvent e){
                statuslabel.setText("Server an!");
                Server.main(null);
            }
        });

der Code startet beim Klick auf den Knopf die Main des Servers:

Java:
        public static void main(String[] args) {
                Server s = new Server();
                if (s.runServer()) {
                        s.listenToClients();
                } else {
                }
        }

Wenn benötigt kann ich noch den restlichen Code zeigen, allerdings brauche ich nur eine Möglichkeit wie ich quasi den Server separiert vom GUI laufen lassen kann, sodass ich an dem noch rumspielen kann.

So sieht der GUI aus nach dem Drück auf Starten:

sdgd.png
 

Joose

Top Contributor
Du führst den Server Thread im UI Thread aus. Dadurch wird ein neuzeichnen der UI verhindert und "sie friert ein".
Lagere den Auruf/Start des Server in einen eigenen Thread aus, dann sollte es klappen :)
 

Joose

Top Contributor
Ein Thread beendet sich von selber wenn aller Code vom Runnable abgearbeitet wurde.
Ich nehme an du hast in der Methode "listenToClients" der Klasse Server eine Endlosschleife. Am einfachsten wäre eine "stop" Methode zu schreiben, diese rufst du auf wenn du auf den "Stoppen" Button drückst. Die "stop" Methode sorgt dafür das die Endlosschleife nicht mehr ausgeführt wird. Aller Code wird ausgeführt und der Thread sollte sich beenden.
Das wäre die saubere Art und Weise diesen Thread zu beenden.

Die unsaubere wäre einfach "interrupt" vom Thread Objekt aufzurufen.
 

jalako

Mitglied
Ja "interrupt" ist sowieso keine Möglichkeit, der Port ist dann weiterhin belegt... habe es aber jetzt hinbekommen. Danke für deine Hilfe :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H Socket Chat entwickeln mit Java Server Client Netzwerkprogrammierung 4
J Socket Ein Chat Server Tutorial Netzwerkprogrammierung 8
S Java Chat Server Netzwerkprogrammierung 8
D Chat Server/mehre Client Netzwerkprogrammierung 9
O Chat (Server) sendet an verschieden Benutzer. Netzwerkprogrammierung 10
L Chat Server programmieren Netzwerkprogrammierung 10
H Socket Java Chat - Verbindung zum Server fehlgeschlagen. Netzwerkprogrammierung 5
I Chat-Client empfängt nichts vom Server Netzwerkprogrammierung 3
A Socket UDP Chat Verbindungsproblem im WWW (Server sendet ins leere) Netzwerkprogrammierung 11
L Socket Chat Server für mehrere Clients Netzwerkprogrammierung 7
AMStyles Client Server basierter Chat Netzwerkprogrammierung 7
D Hilfe ich komme bei meinem UDP chat Server nicht mehr weiter Netzwerkprogrammierung 9
S Client-Server Chat Problem nur im lokalen Netztwerk Netzwerkprogrammierung 23
J Kleines Problem mit Chat Server Netzwerkprogrammierung 2
A server mit 2 Ports : Mit und ohne SSL Chat system Netzwerkprogrammierung 10
K Chat: Nur 1 Verbindung zum Server möglich :( Netzwerkprogrammierung 6
S JAV07P SGD client/server chat Netzwerkprogrammierung 4
L Chat Fenster Netzwerkprogrammierung 1
P Chat in Java Netzwerkprogrammierung 3
C Java Chat Admin Kenzeichnung Netzwerkprogrammierung 14
Androbin Socket Fehlerhafter Applet-Chat Netzwerkprogrammierung 12
C Microsoft Comic Chat Netzwerkprogrammierung 0
G Socket Socket verbindung für Chat System Netzwerkprogrammierung 3
J Chat programmieren Netzwerkprogrammierung 12
TheJavaKid Webcam-Chat im Applet (ChatRoulette Klon) Netzwerkprogrammierung 10
K Socket Chat-GUI eigenes Event nach Empfangen Netzwerkprogrammierung 2
K chat Netzwerkprogrammierung 13
F RMI einfacher Chat - Callbacks(?) funktionieren nicht Netzwerkprogrammierung 7
L Socket Chat funktioniert nicht Netzwerkprogrammierung 2
T Socket Java Chat Netzwerkprogrammierung 2
xDarkSunx Chat JFrame Netzwerkprogrammierung 3
xDarkSunx Hilfe Chat Login Netzwerkprogrammierung 7
E JAVA Chat Netzwerkprogrammierung 19
C Java Chat funktioniert nicht richtig Netzwerkprogrammierung 6
A Multi-User-Chat Netzwerkprogrammierung 2
M Socket Chat-Client-Problem Netzwerkprogrammierung 8
E Userliste für Chat Applet Netzwerkprogrammierung 4
J Framework/ Muster für Chat-ähnliches Programm gesucht Netzwerkprogrammierung 2
M chat als applet umgeschrieben - unbekannter fehler :( Netzwerkprogrammierung 2
P Socket Chat selbst bauen + Multiusereditor Netzwerkprogrammierung 13
T Java Chat über UDP Netzwerkprogrammierung 7
Developer_X Habe fragen zur Chat Programmierung Netzwerkprogrammierung 4
P Java Multiuser Chat hohe Systemauslastung Netzwerkprogrammierung 24
B Die alte Leier: "Chat" Netzwerkprogrammierung 3
M chat funktioniert nicht (Connection refused: connect) Netzwerkprogrammierung 3
R Java-Chat-Applet funktioniert nur in Eclipse Netzwerkprogrammierung 3
DamienX Chat Socketserver/Client. wo ist das Problem? Netzwerkprogrammierung 2
J Client-Client-Chat ohne Serverbeteiligung Netzwerkprogrammierung 2
A Wichtig für einen Chat? Netzwerkprogrammierung 4
S Java Applet Chat Grundsatzfrage Netzwerkprogrammierung 6
R Java Chat über Inet connecten Netzwerkprogrammierung 3
F Chat Programm. Verständnisfrage while-Schleife Netzwerkprogrammierung 7
P Probleme bei Chat programm Netzwerkprogrammierung 2
C Voice Chat Netzwerkprogrammierung 3
G FAQ Chat geht nicht ? Netzwerkprogrammierung 4
T Schriftfarbe im Chat ändern Netzwerkprogrammierung 2
G ActionEvent klappt beim Chat nicht Netzwerkprogrammierung 5
T Chat-Client Netzwerkprogrammierung 12
G Chat zwischen applets: möglich? Netzwerkprogrammierung 2
T Chat mit mehreren Clients Netzwerkprogrammierung 3
C Chat , Streamproblem, PumpingException, Danke Netzwerkprogrammierung 2
S RMI Chat Problem, Client bekannt machen Netzwerkprogrammierung 2
V probleme mit dem chat programm Netzwerkprogrammierung 4
K Lokaler Chat Netzwerkprogrammierung 5
S Chat aufs Internet ausweiten Netzwerkprogrammierung 5
J Router behindert Chat Netzwerkprogrammierung 9
S Knuddels Chat System: Bot / Nachrichten verschicken? Netzwerkprogrammierung 6
G Chat - was brauch ich Netzwerkprogrammierung 2
André B. Brauche Hilfe bei Chat Netzwerkprogrammierung 6
K Problem mit "Chat" Netzwerkprogrammierung 2
N Java-Chat (lauffähig) macht Probleme auf der Konsole Netzwerkprogrammierung 6
Paule Acces denied bei Chat Netzwerkprogrammierung 6
B Multi-chat Problem Netzwerkprogrammierung 3
N Java Chat-Problem Netzwerkprogrammierung 4
G Java Chat mit HTML Cleint Netzwerkprogrammierung 3
G Chat Programm - was ist los? Netzwerkprogrammierung 9
Z chat: wann http und wann sockets verwenden? Netzwerkprogrammierung 11
M Socket Verbindungen für einen Chat Netzwerkprogrammierung 10
R Mini-Chat löst BindException aus Netzwerkprogrammierung 7
F Multiclient Chat Netzwerkprogrammierung 12
K Chat: Verbindung kommt nicht zu stande Netzwerkprogrammierung 6
C IRC CHAT auslesen -> Sockets/input und output Streams Netzwerkprogrammierung 9
S Einfacher Multiuser chat in java Netzwerkprogrammierung 18
R Websockets oder server sent events? Netzwerkprogrammierung 2
W Windows 2019-Server Dienste starten unter Nutzer Netzwerkprogrammierung 1
F http Post auf einen Grafana Server Netzwerkprogrammierung 3
W Socket Server -> lesen von / schreiben zu php-script Netzwerkprogrammierung 6
E Server mit GUI Netzwerkprogrammierung 4
E FTP FTPS Server gibt Fehlernachricht "522 SSL/TLS required on the data channel" zurück Netzwerkprogrammierung 1
I Performanteste Kommunikationsmethode zwischen Client u. Server Netzwerkprogrammierung 4
L Socket Automatische Zuweisung von Server und Client Rolle Netzwerkprogrammierung 12
Eigenen Rechner als Server? Netzwerkprogrammierung 16
FrankenDerStein HTTP Https Server Bibliothek für Linux und Android gesucht. Netzwerkprogrammierung 7
ExceptionOfExpectation Server/Client-Kommunikation Netzwerkprogrammierung 34
M Server-Client-System für Browsergame Netzwerkprogrammierung 5
J Datei Download vom Server Netzwerkprogrammierung 8
izoards Mehrere TCP Verbindungen auf einen Server [alles Local] Netzwerkprogrammierung 2
Yonnig Threads mit Client/Server und GUI (laufend bis button-click) Netzwerkprogrammierung 9
J Client-Server und SOAP Netzwerkprogrammierung 23
K Threads/Server/telnet Fehler Netzwerkprogrammierung 2

Ähnliche Java Themen

Neue Themen


Oben