bigbasti
Grünschnabel
Hallo zusammen,
ich habe hier ein kleines Problem, dass mich in den Wahnsinn treibt!!
Ich bastel grade (aus Lernzwecken) an einem Chat. Der lief auch git, nun möchte ich statt Strings Objekte versenden was auch klappt zumindest Client->Server aber andersherum gehts nicht. Das Programm Friert dabei ein.
Vielleicht kann mit jmd helfen:
Innere Klasse des Clients:
so wie ich es beim Debuggen beobachtet habe friert das Programm bei der Erzeugung des ObjectInputStreams ein:
ois = new ObjectInputStream(new BufferedInputStream(sock.getInputStream()));
Imprinzip möchte ich dass die Nachrichten vom Client->Server->zurück zu Client gesendet werden aber der Empfang klappt leider nicht!
Weis jmd weiter?
MfG
ich habe hier ein kleines Problem, dass mich in den Wahnsinn treibt!!
Ich bastel grade (aus Lernzwecken) an einem Chat. Der lief auch git, nun möchte ich statt Strings Objekte versenden was auch klappt zumindest Client->Server aber andersherum gehts nicht. Das Programm Friert dabei ein.
Vielleicht kann mit jmd helfen:
Innere Klasse des Clients:
Code:
class btnConnect_Click implements ActionListener{
public void actionPerformed(ActionEvent e){
try{
sock = new Socket(txtIP.getText(), Integer.valueOf(txtProxy.getText()));
oos = new ObjectOutputStream(
new BufferedOutputStream(sock.getOutputStream()));
ois = new ObjectInputStream(new BufferedInputStream(sock.getInputStream()));
System.out.println("Verbindugn zu "+txtIP.getText()+":"+txtProxy.getText()+" wurde erfolgreich hergestellt!");
Thread readerThread = new Thread(new EingehendReader());
readerThread.start();
showChatLayout(txtIP.getText()+":"+txtProxy.getText());
sendClientJoins();
}catch(Exception ex){
JOptionPane.showMessageDialog(null, "Es konnte keine Verbindung mit dem angegebenen Server hergestellt werden!", "Verbindung nicht möglich!", JOptionPane.OK_CANCEL_OPTION);
ex.printStackTrace();
}
}
}
private class EingehendReader implements Runnable{
public void run(){
Message msg;
try{
while((msg = (Message) ois.readObject()) != null){
txtChat.append(msg.message + "\n");
txtChat.setCaretPosition(txtChat.getText().length());
}
}catch(Exception e){
e.printStackTrace();
}
}
}
public void sendMessage(String Message, String to, String type, String cmd){
try{
Serializable msg = new Message(Message, nick, to, type, cmd);
oos.writeObject(msg);
oos.flush();
}catch(Exception ex){
ex.printStackTrace();
}
}
public void sendClientJoins(){
try{
sendMessage(java.net.InetAddress.getLocalHost().toString(),"server","command","join");
}catch(Exception e){
e.printStackTrace();
}
}
so wie ich es beim Debuggen beobachtet habe friert das Programm bei der Erzeugung des ObjectInputStreams ein:
ois = new ObjectInputStream(new BufferedInputStream(sock.getInputStream()));
Imprinzip möchte ich dass die Nachrichten vom Client->Server->zurück zu Client gesendet werden aber der Empfang klappt leider nicht!
Weis jmd weiter?
MfG