Chat em java

9 respostas
D

tenho cliente.class e servidor.class, mas como posso funcionar agora com eles??
tenho de por numa webpage? como posso usar agora o chat?

Valeu[]

9 Respostas

cv1

Voce pode dar mais detalhes do que esta tentando fazer?

zepunk

http://www.guj.com.br/java.tutorial.artigo.20.1.guj

D
<a href="//ServidorBasico.java" class="onebox" target="_blank">//ServidorBasico.java</a>

import <a href="http://java.io">java.io</a>.<em>;

import <a href="http://java.net">java.net</a>.</em>;
public class ServidorBasico{

public static void main(String args[]){

try {

System.out.println("[Criando Servidor …]");

ServerSocket servidor = new ServerSocket(1234);

System.out.println("[Servidor Operando na porta 1234]");

while (true) {

System.out.println("[Esperando Conexão …]");

Socket cliente = servidor.accept();

System.out.println("[Conexão aberta de: " + cliente.getInetAddress().toString() + “]”);

System.out.println("[Enviando dados…]");

ObjectOutputStream saida = new ObjectOutputStream(cliente.getOutputStream());

saida.flush();               //Envia cabecalho de preparo do outro endpoint

saida.writeObject(Servidor Basico Conectado);

saida.writeObject(Dados Conexão: +cliente.toString());

saida.writeObject(Tchau!);

System.out.println([Dados Enviados]);

saida.writeObject(EOT);

cliente.close();

System.out.println("[Conexão encerrada]");

}

}

catch (Exception e) {

System.out.println(Erro!\n+e.getMessage());

}

}

}

<a href="//ClienteBasico.java" class="onebox" target="_blank">//ClienteBasico.java</a>

import <a href="http://java.io">java.io</a>.<em>;

import <a href="http://java.net">java.net</a>.</em>;

public class ClienteBasico {
public static void main(String a[]) {

if (a.length==0){

System.out.println("[Forneça um IP ou Nome de Domínio]");

System.exit(0);

}
try {

System.out.println("[Conectando ao Servidor…]");

Socket cliente = new Socket(a[0], 1234);

System.out.println("[Conexão aceita de: " + cliente.getInetAddress().toString() + ]);

System.out.println("[Recebendo Mensagens…]");

ObjectInputStream entrada = new ObjectInputStream(cliente.getInputStream());

String msg;

do {

msg = (String) entrada.readObject();

System.out.println(msg);

} while (!msg.equals(EOT));

cliente.close();

System.out.println("[Conexão Encerrada…]");

} catch (Exception e) {

System.out.println(Erro!\n+e.getMessage());

}

}

}

o cliente nao esta se conectando ao servidor!!! nao entendo porque disso??

thokk

Vc fez o arquivo de RMI, para ele voltar todo o id de sessão do cliente para o servidor. Monitoração vc pode apontar logoff, para um arquivo .mf, da uma pesquisada a mais sobre isso no google ou então no livro do Deitel.

D

nao entendi

thokk

De uma lida

http://www.dca.fee.unicamp.br/cursos/PooJava/objdist/javarmi.html

http://www.javafree.org/content/view.jf?idContent=72

Espero ter ajudado

D

obrigado, mas tava mesmo afim de fazer em socket e threads…

thokk

Acho mais díficil…
Pois tentei fazer do jeito que vc esta fazendo e quando tentei fazer o teste para ver se existe o mesmo apelido não deu muito certo e encheu minha pagina de erro.

J

Se alguem poder me ajudar eu agradeco. Estou com problema com o meu chat. Na hora de ler do teclado estou usando BufferedInputStream, pois quero enviar uma mensagem da linha inteira, e usando o Scanner ele come espaco. Segue o meu codigo Cli e serv

public class Cliente {

/**
 * @param args
 */
public static void main(String[] args) throws IOException{
	Socket cliente = new Socket("192.168.0.100",1456);
	System.out.println("O cliente se conectou ao servidor "+cliente.getPort());
	
	PrintStream saida = new PrintStream(cliente.getOutputStream());
	saida.println("Aki imprime");
	BufferedReader teclado = new BufferedReader(new InputStreamReader(System.in));
	String s = (String)teclado.readLine();
	
	while (s.compareTo("by")!=0){
			saida.println(s);
			teclado = new BufferedReader(new InputStreamReader(System.in));
			s = (String)teclado.readLine();
		}
	saida.close();
	teclado.close();
	cliente.close();
}

}

public class Servidor {

/**
 * @param args
 */
public static void main(String[] args) throws IOException{
	// TODO Auto-generated method stub
	ServerSocket server = new ServerSocket(1456);
	
	System.out.println("Porta "+server.getLocalPort()+" do servidor aberta!!!");

	Socket cliente = server.accept();
	System.out.println(cliente.getInetAddress().getHostAddress()+ " conectado");
	
	BufferedReader bf = new BufferedReader(new InputStreamReader(cliente.getInputStream()));
																			
	
	while(bf.ready()){
		System.out.println("Cliente :"+bf.readLine());
	}
	server.close();
	cliente.close();
}
Criado 4 de janeiro de 2007
Ultima resposta 28 de jun. de 2008
Respostas 9
Participantes 5