Ola pessoal sou novo no fórum e sou meio leigo em java então desculpem se não me expressar bem.
Mas vamos la.
tenho algumas dúvidas com relação ao RMI:
-
Melhor arquitetura para obter paralelismo em um servidor que esteja exportando suas interfaces por RMI (Material pra pesquisa já é de grande ajuda)
-
Estou tendo um erro que ja ta me deixando doido.
estou desenvolvendo uma aplicação Server/client e quando faço os testes no localhost dá tudo certo,
mas se tento executar o cliente em uma máquina normal dá erro.
vou detalhar:
Esse é o código que exporta os objetos no Servidor e aparentemente esta funcionando perfeitamente;
log.info("Exportando...");
Servidor stub = (Servidor) UnicastRemoteObject.exportObject(this, 0);
ServidorDAO stub2 = (ServidorDAO) UnicastRemoteObject.exportObject(new ServerDAO(), 0);
// Liga o stub do objeto remoto no registro, e inicia o RMIRegistry
// na porta 1234
log.info("Criando Registro...");
Registry registry = LocateRegistry.createRegistry(1234);
// Dá um nome pra ele no registro
log.info("Nomeando Registro Registro...");
registry.bind("rmi://10.1.1.6:1234/Servidor", stub);
registry.bind("rmi://10.1.1.6:1234/ServidorDAO", stub2);
log.fine("Servidor iniciado");
System.out.println("Servidor iniciado");
esse é o código do cliente e ele funciona também em localhost ou outra máquina qualquer
if (System.getSecurityManager() == null) {
RMISecurityManager sm = new RMISecurityManager();
System.setSecurityManager(sm);
}
try {
log.info("Resgistrando 10.1.1.6:1234);
registry = LocateRegistry.getRegistry(10.1.1.6, 1234);
stub = (Servidor) registry.lookup("rmi://10.1.1.6:1234/Servidor");
stub2 = (ServidorDAO) registry.lookup("rmi://10.1.1.6:1234/ServidorDAO");
log.fine("Regitro ok");
} catch (AccessException e) {
log.severe("" + e);
e.printStackTrace();
} catch (RemoteException e) {
log.severe("" + e);
e.printStackTrace();
} catch (NotBoundException e) {
log.severe("" + e);
e.printStackTrace();
}
mas agora vem o problema:
boolean aut = stub.Autentica(client);
quando tento executar qualquer método do stub
se estiver em localhost funciona mas se estiver em outra máquina da rede dá o erro - Conexão Recusada para 127.0.0.1.
Se alguem puder me ajudar nessa agradeceria muito.