Ninguem me ajuda? :( Precisava de Ajuda!

1 resposta
M

Um chat usando clientes RMI e Cliente TCP(sockets)

Interface do RMI a suportar pelo servidor.

import java.rmi.Remote;

import java.rmi.RemoteException;

public interface ServicoChat extends Remote {

public int ligar (String nome, ClienteChat refCliente) throws RemoteException;

public int mensagem (String nome, String msg) throws RemoteException;

public int desligar (String nome) throws RemoteException;

}

Cliente TCP
O cliente TCP comunica com o servidor através de sockets TCP. Sempre que o utilizador escreve uma linha
de texto, essa linha é enviada para o servidor para distribuição pelos restantes clientes. Quando uma linha chega
ao servidor, este usará as ligações TCP estabelecidas para a distribuir aos clientes.
Quando um utilizador pretende ligar-se ao serviço de chat poderá invocar o cliente TCP indicando como
parâmetros de entrada (na linha de comando) os seguintes argumentos:
? Nome que irá identificar o utilizador
? Endereço IP do servidor a utilizar
? Porto do servidor a utilizar
O cliente TCP tenta imediatamente ligar-se ao servidor indicado e assim que essa ligação ficar estabelecida
disponibiliza ao utilizador a possibilidade de introduzir mensagens. Quando o utilizador escrever ?sair, o cliente
fecha a ligação ao servidor e termina a sua execução.

Cliente RMI

O cliente RMI comunica com o servidor através de JAVA RMI. Quando um utilizador pretende ligar-se ao

serviço de chat poderá invocar o cliente RMI indicando como parâmetros de entrada (na linha de comando) os

seguintes argumentos:

? Nome que irá identificar o utilizador

? URL rmi: do serviço de chat a utilizar

A primeira tarefa do cliente será estabelecer a ligação com o servidor, invocando o método ligar. De seguida,

sempre que o utilizador escreve uma linha de texto, essa linha é enviada para o servidor para distribuição pelos

restantes clientes, o que é feito através da invocação no servidor do método remoto mensagem. Quando uma

linha chega ao servidor, este usará um interface de callback para a enviar para o cliente, que deverá de seguida

apresentá-la ao utilizador. Para tal o cliente RMI deverá suportar o seguinte interface de callback:

import java.rmi.Remote;

import java.rmi.RemoteException;

public interface ClienteChat extends Remote

{ public void novaMensagem(String msg) throws RemoteException;

}

Quando o utilizador escrever ?sair, o cliente invoca o método desligar no servidor e termina a sua execução.

1 Resposta

R

Bicho, nem sei o que você quer, mas isso está parecendo trabalho de faculdade. Espero que você não ache que alguém fará esse sistema para você, né? :grin:

Abraços.

Criado 23 de março de 2005
Ultima resposta 23 de mar. de 2005
Respostas 1
Participantes 2