Chat

0 respostas
fabiodurgante
seguinte pessoal tenho essa classe aqui um chat 

import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.*; 
import javax.swing.JOptionPane;

/**
 *
 * @author  Humberto
 */
public class Chat extends javax.swing.JFrame implements Runnable{
  ServerSocket ss; 
 private int porta; 
  private String server; 
    private String name; 

  private Socket client; 
  
    /** Creates new form Chat */
    public Chat(String server, int porta, String name) throws Exception {
        this.porta = porta; 
        this.server = server; 
         this.name = name; 
        
     ss = new ServerSocket(porta); 
new Thread(this).start(); 
System.out.println("Servidor ouvindo na porta:" + porta); 

        initComponents();
    }

public void run(){ 
try{ 
while(true){ 
TrataCliente(ss.accept(), name); 
System.out.println("Mais um cliente atendido!"); 

} 

}catch(Exception e){ 
e.printStackTrace(); 
System.exit(1); 
} 
} 

 
 public void Cliente(String server, int porta, String Name){
     try{ 
 Socket s = new Socket(server, porta); 

System.out.println("Conectado a " + server + ":" + porta); 

ObjectOutputStream oo = new ObjectOutputStream(s.getOutputStream());    

txtDialog.append(Name +" > " + txtText.getText() + "\n");


oo.writeObject(txtText.getText()); 
s.close(); 

}catch(Exception e){ 
    JOptionPane.showMessageDialog(this, "Nao foi possivel Estabelecer Coneção no IP: " + server, 
               "ERRO", JOptionPane.ERROR_MESSAGE);
} 
} 

 
public void TrataCliente(Socket s, String Name){
try{ 
    client = s; 

ObjectInputStream oi = new ObjectInputStream(client.getInputStream()); 

txtDialog.append(Name +" > " +  oi.readObject() + "\n");
client.close();} 

catch(Exception e){ 

System.exit(1); 
} 
} 

funciona perfeitamente mandar e receber mensagem de outros pc porem o construtor
public Chat(String server, int porta, String name) throws Exception {
espera em outro frame o principal tem a entrada server porta e o nome para aparecer no txtDialog
esse nome eu gostaria de passar junto com a mensagem para que a outra pessoa da conversa visse assim

FABIO  e ai

e o o que acontece é que a pessoa recebe o nome que ela propria digitou e a mensagem envida, alguem ajuda ai
Criado 16 de janeiro de 2009
Respostas 0
Participantes 1