E ae galera.
Surgiu uma dúvida que eu nao consegui resolver ainda.
Estou usando RMI para uma arquitetura cliente/servidor. Até aí tudo bem. Apanhei um pouco mas consegui fazer tudo funcionar.
Meu ultimo problema foi que o cliente não encontrava as classes de modelo que eu criei (uso hibernate pra conectar ao database). Mas consegui resolver adicionando a linha:
java -Djava.rmi.server.codebase=file:///C:\Java\ServerRMI\bin\ ProgramaCliente
Aqui eu falo na hora de rodar programa onde é o codebase.
Ele consegue rodar agora direitinho o cliente e não dá o ClassNotFoundException.
Mas, como eu uso a classe modelo dentro do programa cliente?
Eu não posso simplesmente dar um import model.Produto, porque o cliente não encontra.
Tentando explicar melhor, eu tenho que retornar pro meu cliente a lista de produtos cadastrados, por exemplo. E retorno uma lista:
No servidor:
public List<Produto> getTodosProdutos()
E no cliente:
List produtos = stub.getTodosProdutos();
Esse List do cliente teria que ser um List, para eu poder usar o:
for(Produto produto: produto){
System.out.println(produto.getNome());
}
São dois projetos separados no eclipse. O ServerRMI e o ClientRMI.
Então eu nao posso simplesmente dar um import model.Produto no cliente, porque essa classe está no servidor.
Não consegui achar uma maneira de resolver isso.
Alguém tem uma idéia? Pode me ajudar?
Vlw.