Atividade
Disciplina
– Sistemas distribuídos
Curso:
Sistemas de informação
Data:
07/05/2010
Valor : 5 pontos.
Grupos
de no Maximo 4 elementos.
1. Utilizando o Eclipse. Realize
as tarefas a seguir:
2. Com os códigos abaixo crie
um projeto no eclipse de nome Chat_server.
Interface
: Talk
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface Talk extends Remote {
public String gettalk(String d) throws RemoteException;
}
Servidor: TalkServer.java
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface Talk extends Remote {
public
String gettalk(String d) throws RemoteException;
}
Classes do servidor:
TalkImpl
import java.rmi.Naming;
import
java.rmi.RemoteException;
import
java.rmi.RMISecurityManager;
import java.rmi.server.UnicastRemoteObject;
public
class TalkImpl extends UnicastRemoteObject
implements Talk
{ /**
*
*/
private static final long serialVersionUID
= 1L;
public TalkImpl(String d) throws RemoteException
{
super( );
}
public
String gettalk(String d)
{
System.out.println("servidor
recebeu: " + d);
return
d;
}
private String d;
}
Cliente: TalkClient.java
import
java.applet.Applet;
import java.awt.Graphics;
import java.rmi.Naming;
import java.rmi.RemoteException;
import java.rmi.server.RemoteObject;
public
class TalkClient
{ public
static void main(String args[])
{ //System.setSecurityManager(new SecurityManager());
String url =
"rmi://127.0.0.1/";
try
{
Talk obj = (Talk)Naming.lookup(url + "serverobj");
String
d=”mensagem”;
System.out.println(obj.gettalk(d));
}
catch
(Exception e) {
System.out.println("Erro: " + e.getMessage());
e.printStackTrace();
}
}
}
3. Compile e execute o projeto e verifique seu correto
funcionamento.
A mensagem deve ser passada do cliente até o servidor.
4. Aproveitando o código do
projeto Chat_server, realize modificações para
obter o seguinte resultado.
a. O cliente e o servidor deverão
ser executados em sistemas operacionais diferentes e deverão se comunicar de
forma correta.
b. A mensagem a ser passada ao
servidor deverá ser lida do teclado (entrada padrão).
Obs: veja a classe Console
fornecida pelo professor na aula anteriro.
c. O servido ao receber a mensagem deverá imprimi-la em console e em
seguida pedir ao usuário que digite a resposta.
Esta resposta deverá também ser lida da
entrada padrão (teclado).
A resposta deverá ser enviada ao cliente
novamente. No cliente a resposta deverá também ser impressa em console
d. O cliente deverá rodar em laço de repetição até
que o servidor envie a resposta “exit”.
e. No
dia da apresentação do trabalho, o sistemas deverá rodar para que o professor o
avalie.
g. Envie
o código do cliente e do classe ChatImpl para o email do professor para que a entrega seja documentada.