Ver Mensaje Individual
  #85 (permalink)  
Antiguo 11/05/2010, 12:53
Avatar de dackiller
dackiller
 
Fecha de Ingreso: septiembre-2003
Ubicación: The Matrix
Mensajes: 341
Antigüedad: 21 años, 3 meses
Puntos: 4
RMI / Router o Firewall

Tema: RMI
Pregunta: ¿ Cómo hago para que mi aplicación basada en RMI funcione a través del firewall ó router wire ó router wireless?

Respuesta:

1. Definir redirección del puerto en tu router y apuntarlo a la maquina servidor especificando su IP privada. (Puerto predeterminado RMI = 1099).

Si usas RMISecurityManager en tu aplicación servidor, debes asegurarte que en tu archivo java.policy concedas los permisos necesarios para aceptar conexiones en el puerto definido para exportar tus objetos.

2. Se debe declarar la siguiente propiedad en tu aplicación servidor antes de crear el Registry:

Ejemplo:
Código PHP:
System.setProperty("java.rmi.server.hostname""midominio.com"); 

EL segundo parametro debe ser la IP ó hostname PUBLICA, de tu aplicación servidor.
De otra forma NO FUNCIONARA así tengas el java.policy configurado para aceptar cualquier conexion.


Más info:

http://www.chuidiang.com/java/rmi/rmi_sin_security.php

http://java.sun.com/j2se/1.4.2/docs/guide/rmi/

PD: Pase más de 1 semana investigando y probando mil lineas de código, con esto se elimina la implementación de crear un Proxy HTTP (No es necesario).

Espero les sea de ayuda.

Saludos...
__________________
--
NOTA: Si haz conseguido la solución a tu problema, por favor edita el titulo del tema colocando el prefijo [SOLUCIONADO], para que otros usuarios puedan encontrar soluciones más rápido.

Última edición por dackiller; 11/05/2010 a las 12:58 Razón: Horror ortográfico