Probleme bei mehreren Clients uns Senden von Messages

dansmo

Mitglied
Hallo,

ich stehe vor einem Problem, das ich seit einiger Zeit nicht lösen kann. Aufgrund des Problems an sich würde es wahrscheinlich auch ins Anfängerforum passen, aber im Programm geht es um Client/Serverconnections.
Ich möchte aus einem Hauptprogramm mehrere Clients mit Messages versorgen.

Es geht um vier hauptsächliche Klassen und meine Unvermögen, diese richtig zu verbinden:

- class Main starte im Prinzip nur alles, so auch MainWindow
- class MainWindow beinhaltet alles rund ums GUI und den Programmablauf
- class MultiServerMonitor ist der Server, der die Clientanbindungen annehmen und handlen soll
- class MultiServerThread soll sich um die Messages zwischen Server und Clients kümmern.

An sich klappt die Verbindung zu den Clients wunderbar. Meine Problem ist aber, dass ich die Messages
aus besitmmten Methoden der Klasse MainWindow senden will. Und ich kriege es einfach nicht hin, in
MainWindow die entsprechende Methode der Klasse MultiServerThread aufzurufen.

Hier mal die wichtigsten Code- Ausschnitte:
Klasse MainWindow:

Java:
public class MainWindow extends JFrame{
 //Variablen, Konstanten, Arrays
 private ServerMonitor sm = Main.getSM();
 private MultiServerMonitor msm;
 private MultiServerThread mst;
 ...
  //Constructor
 MainWindow(){
  ...
  startServer(); //startet den Server
   }  

 void startServer(){
	 msm = new MultiServerMonitor(); 
 }

//dieser Aufruf steht in einem ButtonListener im Moment
 mst.sendMessage("hello World!"); //soll Methode in MultiServerThread ansteuern und hello World an die Clients senden


}

Klasse MultiServerMonitor:
Java:
public class MultiServerMonitor {
 
		
        ServerSocket serverSocket = null;
        
        boolean listening = true;
        
        
        MultiServerMonitor(){
        try {
            serverSocket = new ServerSocket(40444);
        } catch (IOException e) {
            System.err.println("Could not listen on port: 40444.");
            System.exit(-1);
        }

        while (listening)
        	try{
        	   new MultiServerThread(serverSocket.accept()).start();
        	}catch (IOException e){
        		System.err.println("unaible to start ServerThread");
        	}

        }
        
        
        public void exitConnection(){
        	try{
        		serverSocket.close();
        	}catch (IOException e) {
        		System.err.println("Was unailbe to close connection.");
        	}
        }
    
}

Klasse MultiServerThread:

Java:
public class MultiServerThread extends Thread {
    private Socket socket = null;

    public MultiServerThread(Socket socket) {
    
	super("MultiServerThread");
	this.socket = socket;
	
    }
    

    /*
    public void run() {

    //schleife, die messages an die clients sendet:
    for(;;){
    	try {
    		PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
    		out.println("Server says: hello client, welcome to the show!");

    	} catch (IOException e) {
    		e.printStackTrace();
    	}
    }
    }
    */
    
    
    
    
    public void sendMessage(String message){
    	try{
    		PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
    		out.println(message);
    	} catch (IOException e){
    		System.err.println("Could not handle PrintWriter out.");
    	}
    }
   
    
    
}


Starte ich das alles zusammen mit einem Client, dann bekomme ich bei Drücken des Buttons eine NPE.
Grund ist, dass MainWindow die Klasse MultiServerThread nicht kennt. Wie übergebe ich das konkret in meinem Konstrukt? Ich komme einfach nicht drauf. Wäre für Hilfe sehr, sehr dankbar.

Grüße,
dansmo
 
S

SlaterB

Gast
es kann auch mehrere Clients geben, der MultiServerMonitor sollte als Klassenattribut eine Liste der MultiServerThreads verwalten,
in JFrame brauchst du nicht unbedingt ein weiteres Attribut mst,

da ginge auch
msm.getClientThreadList()
oder von mir aus
msm.getDenEinzigenClientDerGeradeDaIst()

auf null solltest du in jedem Fall prüfen, man kann den Button auch dann drücken, wenn kein Client da ist
 

dansmo

Mitglied
Du meinst so in der Art?

Java:
 List<MultiServerThread> multiServerThreads = new ArrayList<MultiServerThread>();
...
while (listening)
        	try{
        	   multiServerThreads.add(new MultiServerThread(serverSocket.accept()).start());
        	}catch (IOException e){
        		System.err.println("unaible to start ServerThread");
        	}

        }
...
Soweit war ich auch schonmal, da meckert Eclipse aber "The method add is not applicable for the arguments (void)".
 

dansmo

Mitglied
Habe das jetzt modifiziert. Allerdings bekomme ich nun einen NPE, die mir auch unerklärlich ist.

In MainWindow:
Java:
 private MultiServerMonitor msm;
 ...
 //Constructor
 MainWindow(){
  ...
  startServer();
 }

  void startServer(){
	msm = new MultiServerMonitor(); 
  }

  //Und dann beim Buttonlistener:
      System.out.println("class" + msm);
    for(int i = 0; i <= msm.multiServerThreads.size(); i++){
        mst = msm.multiServerThreads.get(i);
        mst.sendMessage("hello Client # " + i + " !");
    }

Leider ist msm = null. Warum? Ich habe doch in startServer msm initialisiert? Wo ist mein Fehler?
 
S

SlaterB

Gast
der Fehler ist, kein vollständiges Programm zu posten,
es ist nicht erkennbar, was oder wo 'Buttonlistener' ist, ob das auf eine andere gleichnamige lokale Variable msm zugreift oder ein anderes Objekt vom Typ MainWindow oder ob zwischendurch wieder auf null gesetzt wird
oder der Listener schon vor der Initialisierung drankommt oder oder,
denkbar ist vieles, sichtbar bisher wenig
 

dansmo

Mitglied
Hast recht. MainWindow umfasst 600 Zeilen, wollte das Forum damit nicht erschlagen.

Das ist der vollständige Konstruktor:
Java:
 //Constructor
 MainWindow(){
  L.info("starting main Window...");
  setTitle("Exchange Monitor");  // Titel der Fenster setzen
  initComponents(); // Komponente (Tabelle, Button, Menü etc.) erstellen
  this.setSize(300,150);
  this.setVisible(true);
  api.addStatusListener(new MyExtendedStatusListener());
  L.info("Loaded Main Window");
  startServer();
 }

initComponents erstellt die Elemente des GUI, u.a. einen Button auf dem der ButtonListener sitzt.
ButtonListener ist eine Klasse in MainWindow.java:
Java:
class ButtonListener implements ActionListener{
  
  MyQuoteListener quoteListener; // Enthält ein Bezug auf ein MyQuoteListener
  boolean quotesRunning; // Ob der Kurse gerade abonniert ist oder nicht
  Quote quote; // Der Kurs-Objekt, wie wir ihn von der API bekommen
  
  //Constructor für ButtonListener
  ButtonListener(){
   quoteListener = new MyQuoteListener(); // Erstelle ein neuen MyQuoteListener, weise es die Variabel quoteListener zu
   quotesRunning = false; // Am Anfang laufen die Kurse nicht
  }
  
  //Methode für Buttonlistener
  public void actionPerformed(ActionEvent ae){  
   if (quotesRunning){ 
	   /*
	   for(int i = 0;i<=quotes.length-1;i++){
		   api.removeQuoteListener(quotes[i], quoteListener); 
	   }
	   */
    quotesRunning = false; // Die Kurse laufen nun nicht mehr
    textArea.setText("");
    for(int i = 0; i<=warned.length-1;i++){
    	warned[i] = false;
    }
    t.cancel();
    count = 0;
    textArea.setBackground(Color.orange);
    cancelOrders();
    startBtn.setText("Start"); // Button-Text anpassen
    return; // Fertig mit der Button-Klick
   }

    
    quotesRunning = true; // Die Kurse laufen jetzt
    startBtn.setText("Stop"); 
    t= new Timer("recheckTimer");
	//checkDataConnections();
	//checkTradeConnections();
    System.out.println("class" + msm);
    for(int i = 0; i <= msm.multiServerThreads.size(); i++){
        mst = msm.multiServerThreads.get(i);
        mst.sendMessage("hello Client # " + i + " !");
    }

 
   startBtn.setText("Stop"); // Button-Text anpassen
   
  
  }

msm kommt sonst nirgendwo vor.
Hier noch der Ausschnitt aus void initComponents:
Java:
 startBtn = new JButton("Start"); // Neuen JButton erstellen, mit Text "Start"
  ButtonListener bl = new ButtonListener(); // Ein neuen ButtonListener (wie oben definiert) erstellen
  startBtn.addActionListener(bl); // Die ButtonListener zum Ereignis-Abhörer-Liste des Buttons hinzufügen.  Somit wird Java die actionPerformed()
           // Methode von der ButtonListener aufrufen wenn das Button geklickt wird.
 
  startBtn.setBackground(lightBlue);
  btnPanel.add(startBtn);
 
S

SlaterB

Gast
nicht schlecht, aber nicht ausreichend,
kopieren, ausführen, läuft, vorher geht fast gar nix

ich zumindest kann den Fehler weiterhin nicht erkennen,
und wenn du mehr postest, dann kann das auch ganz leicht weniger sein,
Quark wie MyQuoteListener, MyExtendedStatusListener, L.info(), setBackground(lightBlue) und wer weiß was alles hat sicher nix mit dem Problem zu tun,
kann testweise alles gelöscht werden,
auch MultiServerMonitor muss kein Server mehr sein, kann im Grunde eine leere Dummy-Klasse sein, es geht darum ob es null ist oder eben nicht,

falls bei derartigen Vereinfachungen der Fehler verschwindet -> aha, schon hast du selber was herausgefunden

macht sicher 5-20 Min. Mühe, vielleicht gar neues Projekt anlegen und kopieren usw., aber diese Arbeit kannst du dir ruhig machen um sie anderen zu ersparen

-------

startBtn.addActionListener(bl);
// Die ButtonListener zum Ereignis-Abhörer-Liste des Buttons hinzufügen. Somit wird Java die actionPerformed()
// Methode von der ButtonListener aufrufen wenn das Button geklickt wird.

für wen ist eigentlich dieser Kommentar? wer immer auch nur die leiseste Ahnung von JButton + ActionListener hat, wird diesen Zusammenhang doch hoffentlich kennen,
falls es nicht eine Gedankenstütze für dich ist, bringen solche offensichtlichen Informationen praktisch nix, stören eher
 
Zuletzt bearbeitet von einem Moderator:

dansmo

Mitglied
Gute Idee. Habe ein neues Projekt angelegt und alles entschlackt. Fehler bleibt der Gleiche:

Main:
Java:
public class Main {

	 public static void main(String[] args){
		
		new MainWindow();	

	}
}

MainWindow:

Java:
public class MainWindow extends JFrame{
 //Variablen, Konstanten, Arrays
 private MultiServerMonitor msm;
 private MultiServerThread mst;
 
 JButton startBtn;
 JPanel btnPanel;
 
 //Constructor
 MainWindow(){
  setTitle("Exchange Monitor");  // Titel der Fenster setzen
  initComponents(); // Komponente (Tabelle, Button, Menü etc.) erstellen
  this.setSize(300,150);
  this.setVisible(true);
  startServer();
 }

MultiServerMonitor und MultiServerThread habe ich so gelassen wie sie sind.
 
 
 void startServer(){
	msm = new MultiServerMonitor(); 
 }


 //ButtonListener inkl. Methode für Quotes-Button
 class ButtonListener implements ActionListener{
  
 
  //Constructor für ButtonListener
  ButtonListener(){
  
  }
  
  //Methode für Buttonlistener
  public void actionPerformed(ActionEvent ae){  

    System.out.println("class" + msm);
    for(int i = 0; i <= msm.multiServerThreads.size(); i++){
        mst = msm.multiServerThreads.get(i);
        mst.sendMessage("hello Client # " + i + " !");
    }  
  
  }
  
 }

  
   //Methode zum Erstellen der grafischen Komponenten
   void initComponents(){
  
  // Füge einige Buttons ein!
  btnPanel = new JPanel();//Ein JPanel ist abgetrennt vom Rest des Frames
  btnPanel.setBorder(BorderFactory.createEtchedBorder());
    
  startBtn = new JButton("Start"); // Neuen JButton erstellen, mit Text "Start"
  ButtonListener bl = new ButtonListener(); // Ein neuen ButtonListener (wie oben definiert) erstellen
  startBtn.addActionListener(bl); // Die ButtonListener zum Ereignis-Abhörer-Liste des Buttons hinzufügen.  Somit wird Java die actionPerformed()
           // Methode von der ButtonListener aufrufen wenn das Button geklickt wird.
 
  btnPanel.add(startBtn);
  
  getContentPane().add(btnPanel, BorderLayout.NORTH); //Dem Panel sagen wo es sich anordnen soll
  
   
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // Wenn der Fenster geschlossen wird, so soll die Anwendung beendet werden
 }
 
   
   

   
}
 
S

SlaterB

Gast
Java:
public class Test
{
    public static void main(String[] args)
    {
        new MainWindow();
    }
}

class MainWindow
    extends JFrame
{
    private MultiServerMonitor msm;
    JButton startBtn;
    JPanel btnPanel;

    MainWindow()
    {
        setTitle("Exchange Monitor");
        initComponents();
        this.setSize(300, 150);
        this.setVisible(true);
        startServer();
    }

    void startServer()
    {
        msm = new MultiServerMonitor();
    }

    void initComponents()
    {
        btnPanel = new JPanel();
        btnPanel.setBorder(BorderFactory.createEtchedBorder());

        startBtn = new JButton("Start");
        ButtonListener bl = new ButtonListener();
        startBtn.addActionListener(bl);

        btnPanel.add(startBtn);

        getContentPane().add(btnPanel, BorderLayout.NORTH);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }

    class ButtonListener
        implements ActionListener
    {
        public void actionPerformed(ActionEvent ae)
        {
            System.out.println("msm: " + msm);
        }
    }
}
class MultiServerMonitor {}
starten, Button drücken, Ausgabe:
msm: test.MultiServerMonitor@1a05308

msm ist nicht null, vielleicht bekommst du eine Exception beim Zugriff auf msm.multiServerThreads?
 

dansmo

Mitglied
Also wenn ich MutliServerMonitor nur als dummy Klasse mache, dann habe ich das jetzt auch festgestellt, dass ich kein null bekomme.
Benutze ich aber die MulitServerMonitor so wie im 1. Posting, dann habe ich weiterhin null.
Das Problem muss also irgendwie in MultiServerMonitor liegen, was aber doch keinen Sinn macht, oder?
 

dansmo

Mitglied
Code:
classnull
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
	at com.mmwarburg.meander.MainWindow$ButtonListener.actionPerformed(MainWindow.java:63)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
	at java.awt.Component.processMouseEvent(Component.java:6041)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
	at java.awt.Component.processEvent(Component.java:5806)
	at java.awt.Container.processEvent(Container.java:2058)
	at java.awt.Component.dispatchEventImpl(Component.java:4413)
	at java.awt.Container.dispatchEventImpl(Container.java:2116)
	at java.awt.Component.dispatchEvent(Component.java:4243)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
	at java.awt.Container.dispatchEventImpl(Container.java:2102)
	at java.awt.Window.dispatchEventImpl(Window.java:2440)
	at java.awt.Component.dispatchEvent(Component.java:4243)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)

Zeile 63 ist bei mir
Java:
for(int i = 0; i <= msm.multiServerThreads.size(); i++){

Wobei die Ausgabe ja eindeutig null ist.
 
S

SlaterB

Gast
falls nicht zufällig toString() des Objektes null oder "null" zurückgibt ;)
noch sicherer ist
System.out.println("msn null? "+(msn == null));

-------

tja, mir ist noch keine weitere Erläuchtung gekommen,
wäre aber inzwischen so interessiert, dass du mir das Programm als zip zuschicken könntest,
hier im Forum oder sonstwo hochladen oder an slaterb gmx de

oder du schaust dir weitere Zwischenschritte zwischen funktionierender und nicht funktionierender Version an,
irgendwann muss eine kleine Änderung die entscheidene sein
 

dansmo

Mitglied
Es grenzt sich so langsam ein, es muss an dem Code-Ausschnitt liegen. Zur besseren Übersichtlichkeit habe ich
die Methode installServer vom Rest abgegrenzt. Wird die Methode nicht aufgerufen, bekomme ich kein null. Wir sie aufgerfuden habe ich null.

Java:
public class MultiServerMonitor {
 
		
        ServerSocket serverSocket = null;
        
        boolean listening = true;
        MultiServerThread mst;
        List<MultiServerThread> multiServerThreads = new ArrayList<MultiServerThread>();
        
        //Constructor
        MultiServerMonitor(){
        	installServer();
        }
        
        void installServer(){
        try {
            serverSocket = new ServerSocket(40444);
        } catch (IOException e) {
            System.err.println("Could not listen on port: 40444.");
            System.exit(-1);
        }
        
        while (listening)
        	try{      		
        		mst = new MultiServerThread(serverSocket.accept());
        		mst.start();
        	    multiServerThreads.add(mst);
        	}catch (IOException e){
        		System.err.println("unaible to start ServerThread");
        	}

        }
        
        
        
        public void exitConnection(){
        	try{
        		serverSocket.close();
        	}catch (IOException e) {
        		System.err.println("Was unailbe to close connection.");
        	}
        }
        
        
    
}
 
S

SlaterB

Gast
aja, daran hatte ich nicht gedacht,
war dann aber wirklich schon in den ersten Postings zu erkennen, sorry ;)

also, du hast im Konstruktor eine Endlosschleife eingebaut, daher ist der Konstruktor nie fertig
und genauso hängt auch die Methode startServer() von MainWindow,

im Grunde hatte ich auch das bedacht, als ich schrieb 'oder der Listener schon vor der Initialisierung drankommt'
denn die Methode startServer() ist auch dann noch nicht fertig, wenn die GUI schon angezeigt wird und der Button gedrückt wird,

das fällt sonst nicht weiter auf, weil nach startServer() nichts weiter passieren muss,
im Grunde ist aber auch der MainWindow-Konstruktor noch nicht fertig und die main-Methode ebensowenig,

sauber wäre, wenn im MultiServerMonitor-Konstruktor nix passiert,
aus
void startServer(){
msm = new MultiServerMonitor();
}
mache
Java:
void startServer(){
    msm = new MultiServerMonitor(); 
    Runnable r = new Runnable() {
      public void run() {
           msn.starteDeineLangeSchleife();
      }
    }
    new Thread(r).start();
    System.out.println("msn erfolgreich initialisiert");
}
oder baue MultiServerMonitor auch zu einer Thread-Klasse um
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Probleme bei Java-Installation auf Server (Linux/Shell/Terminal) Netzwerkprogrammierung 6
platofan23 Probleme mit Socket bei Android Studio? Netzwerkprogrammierung 22
J Probleme mit Multicast über IPv6, DatagramChannel Netzwerkprogrammierung 1
Niggo_ Probleme mit Java Mail Netzwerkprogrammierung 14
F Probleme mit Connection Reset bei Telnet Verbindung Netzwerkprogrammierung 1
K Probleme bei HTML-Mail-Abruf mit IMAP bei 1und1 Netzwerkprogrammierung 2
L Socket SSLServer Probleme Netzwerkprogrammierung 0
H Probleme mit UDP Netzwerkprogrammierung 0
F Server/Client Probleme Netzwerkprogrammierung 3
R Probleme mit JMS Netzwerkprogrammierung 1
A Probleme beim Klassen-Import von sun.misc. ... Netzwerkprogrammierung 19
M RMI RMI Probleme zwischen Client und Server Netzwerkprogrammierung 5
B Probleme beim ersten Netzwerkprogramm Netzwerkprogrammierung 3
M Probleme mit FTP Netzwerkprogrammierung 19
windl URLConnection unter 1.7 macht Probleme Netzwerkprogrammierung 14
Z Socket Probleme beim Senden und Empfangen Netzwerkprogrammierung 5
Z Probleme beim Senden von Nachrichten an den Server Netzwerkprogrammierung 9
Maxim6394 Probleme bei Messenger Netzwerkprogrammierung 16
I Socket UDP Hole Punching bereitet Probleme Netzwerkprogrammierung 14
C Socket Probleme beim Lesen und Schreiben aus/in einen Socket Netzwerkprogrammierung 2
S HTTP Probleme mit POST-Befehl Netzwerkprogrammierung 2
R FTPS - Probleme mit FTPSClient Netzwerkprogrammierung 2
S Probleme mit XMLEncoder/XMLDecoder Netzwerkprogrammierung 2
D Server - Client Probleme Netzwerkprogrammierung 9
Weiti HTTP Zertifikat-Probleme - InstallCert.java Netzwerkprogrammierung 2
M Socket Probleme mit einfacher Socketverbindung Netzwerkprogrammierung 3
H Probleme mit GUI (RMI) Netzwerkprogrammierung 6
T RMI Probleme mit RMI-Server Netzwerkprogrammierung 4
J Probleme bei RSA mit byte[] bei Versand über RMI Netzwerkprogrammierung 2
T FTP Probleme mit Passiv und Binary Mode Netzwerkprogrammierung 3
J Probleme mit Threads (Client terminiert) Netzwerkprogrammierung 4
S Socket SocketServer und Client machen Probleme Netzwerkprogrammierung 6
B Server / Client Anwendung, Client GUI Probleme Netzwerkprogrammierung 11
F RMI probleme Netzwerkprogrammierung 3
E jPcap Probleme Netzwerkprogrammierung 3
B HTTP Probleme mit HttpClient? Netzwerkprogrammierung 2
T Probleme mit Jpcap Netzwerkprogrammierung 18
P Probleme mit OutputStream Netzwerkprogrammierung 7
P Probleme beim weiter senden von Datein Netzwerkprogrammierung 10
B Probleme mit FTP verbindung Netzwerkprogrammierung 22
L Probleme bei Chatserver Netzwerkprogrammierung 6
A Probleme mit kleinem Netzwerk Programm Netzwerkprogrammierung 30
S Probleme beim senden von Daten per POST Methode an PHP Scrip Netzwerkprogrammierung 5
G Probleme mit SecruityManager + RMI Netzwerkprogrammierung 10
derMartin Probleme mit NNTP Client Netzwerkprogrammierung 2
A Probleme mit Citrix Netzwerkprogrammierung 17
A Probleme mit kleinem Messenger-Programm Netzwerkprogrammierung 4
K RXTXcomm : Install - Probleme Netzwerkprogrammierung 7
R Probleme mit UDP Netzwerkprogrammierung 4
P Probleme bei Chat programm Netzwerkprogrammierung 2
I Probleme mit 'JSSE Samples' von Sun Netzwerkprogrammierung 5
T RMI - Probleme beim Starten des Clients Netzwerkprogrammierung 4
E InetAddress Klasse-Probleme Netzwerkprogrammierung 4
M dateien übertragen, probleme mit versch. Strömen? Netzwerkprogrammierung 4
R Rechte Probleme bei Applets Netzwerkprogrammierung 16
D EA-Exception Network Adapter macht probleme Netzwerkprogrammierung 2
G Probleme mit Firewall beim empfangen von dateien über socket Netzwerkprogrammierung 6
P Probleme mit Input- / Output-Streams Netzwerkprogrammierung 2
V probleme mit dem chat programm Netzwerkprogrammierung 4
F WLAN Probleme (CLIENT-SERVER) Netzwerkprogrammierung 4
J Probleme mit ObjectOutputStream! Netzwerkprogrammierung 15
S Probleme beim Beschränken der Geschwindigkeit Netzwerkprogrammierung 6
M Probleme beim Abfangen von Streams Netzwerkprogrammierung 5
G Fragen/Probleme mit JavaMail Netzwerkprogrammierung 2
N Java-Chat (lauffähig) macht Probleme auf der Konsole Netzwerkprogrammierung 6
P Probleme mit einem Array aus Sockets Netzwerkprogrammierung 2
C Probleme bei Dateiupload mit socket Netzwerkprogrammierung 4
T FTP Chatprogramm probleme Netzwerkprogrammierung 2
C RMI Probleme mit iptables Netzwerkprogrammierung 2
D socket exception + timing probleme Netzwerkprogrammierung 2
G Probleme bei Proxy-Server! Netzwerkprogrammierung 5
S Probleme mit HttpURLConnection Netzwerkprogrammierung 10
D Habe 2 Probleme: Input eingabe und Multi Socket Server Netzwerkprogrammierung 2
F Schulprojekt erweitern - Online Quiz mit mehreren Clients - Was benötige ich ? Netzwerkprogrammierung 0
Messoras Socket Chatserver mit mehreren OutputStreams Netzwerkprogrammierung 2
T Verbindungsversuche über TCP Sockets von mehreren Threads führt zu Serverabsturz Netzwerkprogrammierung 2
D Netzwerkprobleme bei mehreren Clients Netzwerkprogrammierung 4
F Peer to Peer Verbindung zwischen mehreren Clients? Netzwerkprogrammierung 8
A Server mit mehreren Clients Netzwerkprogrammierung 2
B Rmi Kommunikation Server zu mehreren Clients? Netzwerkprogrammierung 3
T Chat mit mehreren Clients Netzwerkprogrammierung 3
A Geöffnete ObjectStreams aus mehreren Methoden nutzen Netzwerkprogrammierung 4
R Problem mit mehreren Anfragen auf demselben Port Netzwerkprogrammierung 2
T RMI mit mehreren Servern? Netzwerkprogrammierung 3
J Kommunikation zw. Server und mehreren Clints haut nicht hin Netzwerkprogrammierung 2
L Logingeschützte Website mit mehreren Accs auslesen Netzwerkprogrammierung 3
D Kommunikation zwischen mehreren Servlets??? Netzwerkprogrammierung 3
P Zeit zwischen mehreren Client log-ins bestimmen. Netzwerkprogrammierung 2
S Server mit mehreren Clients Nachrichten austauschen Netzwerkprogrammierung 6
M Socket Senden an alle verbundenen Clients Netzwerkprogrammierung 3
M Socket Netzwerk Übertragung zwischen 4 Clients Netzwerkprogrammierung 2
G Gui von 2 Clients Synchronisieren Netzwerkprogrammierung 2
P Socket Viele Clients bedienen mit Vert.x Netzwerkprogrammierung 9
Aruetiise Socket Mehrere Clients Netzwerkprogrammierung 4
J Framework mehrere Clients/ Server-Broadcast/oracle XE/ XML Netzwerkprogrammierung 1
V Server / mehrere Clients / MySQL / Konzept Netzwerkprogrammierung 2
M MultiClient Server - Senden an alle Clients Netzwerkprogrammierung 8
G Multiple Clients and one Server --> java.lang.NullPointerException Netzwerkprogrammierung 1
M Teilnehmerliste vom Server auch an alle Clients senden Netzwerkprogrammierung 0
Luk10 Server / Client: Clients speichern! Netzwerkprogrammierung 6

Ähnliche Java Themen

Neue Themen


Oben