Boa Tarde Pessoal 
Eu estou estudando RMI e desenvolvendo um pequeno sistema para treinar os estudos e talz…
Eu consegui fazer compilar tudo direito, gerei o stub, iniciei o rmiregistry.
Os arquivos do cliente em uma pasta para cliente e os arquivos do servidor em uma pasta do servidor (estou testando em uma unica máquina)
Depois de iniciar o rmiregistry executo a classe que contem o main do servidor, executo também a classe que contém o método main de cliente, até aí beleza.
Acontece que quando, no cliente, vou chamar algum método do servidor, aparece o seguinte erro:
NomeClasse é a classe que contem o método que estou tentando chamar de verdade! (Ela está no lado Servidor)
Vendo isso, peguei o arquivo class dessa classe na pasta com os arquivos do servidor e copiei para a pasta com os arquivos do cliente!!! Funcionou!
Agora a grande dúvida é se realmente essa é uma solução adequada???
As classes deveriam ficar no servidor gerando os objetos que seriam acessadas através da rede pelo RMI certo??? ou estou enganado e essas classes devem estar também no cliente???
aguardo resposta…

Alguém sabe me responder???
Então kra… na realidade vc teria ter uma a Interface
seus objetos acessam as implementações dessa interface.
De uma olha nesse link http://java.sun.com/developer/onlineTraining/rmi/RMI.html
Nos itens:
- Interfaces: The Heart of RMI
- RMI Architecture Layers
- Stub and Skeleton Layer
Eu li a referência e é o que estou fazendo aqui (tenho a interface). No código o cliente nem sabe de qual classe vem o serviço, através de:
Naming.loockup()
eu pego o serviço e executo algum método que este serviço retornado tenha implementado da Interface Service.
Na execução desse método é que acontece o erro, ou seja, não consigo retornar o objeto real que implementa a interface Serviço, preciso dele no mesmo diretório dos arquivos do cliente para fazer funcionar.
O correto pela referência seria o cliente não precisar desses arquivos localmente, eles ficariam somente no servidor e o cliente solicita seus objetos.
Alguém mais poderia me ajudar a entender se existe algum processo esquecido ou alguém que já tenha passado por isso???
ta usando alguma ide com plugin rmi ? ou tá no braço ?
estou no braço cara, estou fazendo tudo a mão mesmo para entender melhor e talz.

se for o problema com o security manager, da uma olhada nesse pdf
em todo caso, ja tive problemas com class not found reclamando do stub, se acontecer isso depois você inicia o registro não por um outro prompt, mais pela seguinte linha: “LocateRegistry.createRegistry(porta);”, isso ja resolveu no meu caso.