Duvidas com RMI

Galera estou no ultimo capitulo do Livro Use a cabeça Jsp & Servlets e ele fala muito vagamente sobre o RMI tambem dei uma olhada no Use a cabeça java e no artigo do guj porém estou com algumas duvidas.

O RMI é como se fosse uma comunicação cliente Servidor do meu Software? Eu crio um Software Cliente e um Software Servidor (Exemplo esses softwares de lan-houses) é isso?

Se alguem puder me indicar um material sobre isso ficarei muito grato, algo que não fale e sim explique realmente como funciona. Pôs o que vi até agora está me confundindo mais.

Abraço e Obrigado desde ja.

Cara, eu estou lendo esse livro tb e estou achando bem interessante ! Estudar pra essa certificação java, SCWCD, realmente motiva vc a aprender cada vez mais … eh exatamente isso que o final desse livro está fazendo ! Ele te leva pra próxima certificação SCBCD.
:smiley:
Eu comecei a ler o livro da Kathy Sierra de “Head First EJB”, http://oreilly.com/catalog/9780596005719
Ele começa explicando um pouco sobre essa sua dúvida sobre cliente/servidor …
da uma pesquisada na evolução de tecnologia, entendi um pouco de CORBA … na wikipédia a explicação não está TÃO boa assim mas, vale a pena pra vc começar e ver se vc gosta do assunto:
Wikipedia CORBA: http://pt.wikipedia.org/wiki/CORBA
Wikipedia RMI: http://pt.wikipedia.org/wiki/RMI

[]'s !

Valeu mano!!

No Use a Cabeça Java tem um capítulo que explica o funcionamento do RMI, bem no final do livro. Mas basicamente é isso mesmo que você disse: ele serve para fazer a comunicação cliente x servidor assim como sockets, mas de uma maneira mais simples, invocando métodos e acessando objetos que estão em outra máquina.

Oliveira e como eu compilaria o RMI no eclipse? sabendo que… tenho que usar

rmic MensageiroImpl  

abraço.

Compilei tudo no DOS seguindo os passos do tutorial aqui do guj e fluiu legal desta vez.
http://www.guj.com.br/article.show.logic?id=37

Agora estou com uma duvida , aqui em casa uso Wireless para mim usar este RMI entre um PC e outro como faria?

Abraço.

Consegui resolver o problema mudando os ips para os da minha rede.

Porém eu fiz da Seguinte Maneira…

Um Servidor em Um PC
Um Cliente em outro PC

Para mim fazer por exemplo um Chat utilizando RMI

Eu teria que ter 2 Janelas Rodando ? Servidor e Cliente em cada? o teria uma maneira de usar somente 1 ?

Abraço.

Bom dia,

Java RMI é uma forma de Sun RPC (Remote Procedure Call).
Ele pode chamar métodos em outra JVM, como se estivessem na mesma JVM.

Utilisa JRMP ou utilisa RMI-IIOP para comunicar com objetos CORBA.

Você pode executar várias instâncias de um aplicativo RMI no mesmo
máquina, é suficiente manter o mesmo @IP mas com a mudança do número da porta (Port).

Neste caso, o sistema RMI usa a pilha TCP/IP, como se foram ligados em rede, acima de diferentes PCs. {sem TCP/IP Stack não à RMI}

rmiregistry deve ser lançado na mesma máquina que o servidor de objectos (Remote Objects).

O problema com RMI é quando ele tem de atravessar o firewall na internet. Temos de usar HTTP Tuneling.

RMI tem três categorias de objectos: Locais, remotos, serialisados (transferidos na rede RMI)
Uma coisa que às vezes se esquecem é que o Estado de objetos (attributos) são transferidos, mas não as classes.
{utilise um servidor HTTP ou FTP}

RMI è utilizado no systema JINI e serviço JavaSpaces :
http://www.jini.org/wiki/Main_Page

E no Gigaspaces :

Felizmente o nosso Sol o seja a SUN lançou Super Jini -> JXTA :slight_smile:

(JXTA é baseada no modo de comunicação de mensagems e não em RPC)

Best regards

[quote=GabrielCardelli]Consegui resolver o problema mudando os ips para os da minha rede.

Porém eu fiz da Seguinte Maneira…

Um Servidor em Um PC
Um Cliente em outro PC

Para mim fazer por exemplo um Chat utilizando RMI

Eu teria que ter 2 Janelas Rodando ? Servidor e Cliente em cada? o teria uma maneira de usar somente 1 ?

Abraço.[/quote]

Para fazer um chat você precisa rodar o servidor em uma máquina e os clientes(podem ser um ou mais) em outras máquinas diferentes que estejam na rede. O servidor fica encarregado de receber as mensagens e enviá-las para os clientes, portanto ele é fundamental para o funcionamento do sistema, então para fazer um chat vc vai precisar de no minimo um servidor e um cliente rodando.