02/03/2015, 02:42
|
| | Fecha de Ingreso: marzo-2015
Mensajes: 1
Antigüedad: 9 años, 8 meses Puntos: 0 | |
Respuesta: problema con RMI Buenos días
Yo tambien estoy con el tema del RMI, intentando crear un servidor / cliente en remoto
Tengo un servidor privado con Telefonica con una IP publica directa a ese servidor
Para generar el servidor, uso este codigo:
public static void main(String[] args) {
DatosConexion datos = DatosConexion.getInstance();
ip = datos.getServiceIP(Servidor);
puerto = Integer.valueOf(datos.getServicePort(Servidor));
nombreServidor = datos.getServiceName(Servidor);
System.out.println("Conectando a: " + ip + " / " + puerto + " / " + nombreServidor);
if (System.getSecurityManager() == null)
System.setSecurityManager(new SecurityManager());
try {
System.setProperty("java.rmi.server.hostname", ip);
Registry rmiRegistry = LocateRegistry.createRegistry(puerto);
RmiService rmiService = (RmiService) UnicastRemoteObject
.exportObject(new RmiServer(), puerto);
rmiRegistry.bind(nombreServidor, rmiService);
} catch (Exception ex) {
ex.printStackTrace();
}
}
en el cliente, este de aqui:
public static void main(String[] args) {
DatosConexion datos = DatosConexion.getInstance();
ip = datos.getServiceIP(Servidor);
puerto = Integer.valueOf(datos.getServicePort(Servidor));
nombreServidor = datos.getServiceName(Servidor);
System.out.println("Conectando a: " + ip + " / " + puerto + " / " + nombreServidor);
if (System.getSecurityManager() == null)
System.setSecurityManager(new SecurityManager());
try {
RmiService remoteService = (RmiService) Naming
.lookup("//" + ip + ":" + puerto + "/" + nombreServidor);
RmiClient client = new RmiClient();
remoteService.addObserver(client);
} catch (Exception ex) {
ex.printStackTrace();
}
}
Este codigo en local me funciona, pero en remoto no
ni siquiera en local cuando en vez de poner localhost pongo la ip privada de mi ordenador (no el del servidor)
Que tengo que revisar?
Me imagino que puede ser problema del firewall, pero no se como revisar si esta bien o mal |