Ciber Café en JAVA Con RMI
Ciber Café en JAVA Con RMI
Tenemos en cuenta que en RMI, un servidor de objeto exporta un objeto remoto y lo registra
en un servicio de directorios para que los invoque el cliente, y que en el cliente también se van
a exportar objetos remoto par que los ubique el servidor, inferimos que ambas aplicaciones,
tanto cliente como servidor, se comportaran como cliente y también como servidor.
Con lo anterior deducimos que la interface que la interface remota principalmente no estará
ubicada en el cliente ni en el servidor. Por tanto, creamos una Java Class Library, que tendrá 2
interfaces con los mismos métodos remotos, más adelante se explicara porque es necesario el
uso de dos interfaces. También es necesario el empleo de dos clases que la darán ubicación a
la librería, esta ubicación será la dirección IP y el puerto donde se comuniquen el cliente y el
servidor.
Librería RMIControlComputadoras
Librería que contiene dos interfaces con los métodos apagar, reiniciar, bloquear, desbloquear y
envío de datos, y que también contiene dos clases para ubicar la interfaces con los métodos
mencionados.
1. Control computadoras
Clase que heredará la interface Remote para publicar los objetos remotos con los métodos
apagar, reiniciar, bloquear, desbloquear y enviar datos.
Luego creamos una copia de esta clase llamada ControlCompuatadoras2 que tendrá el mismo
contenido de la clase ControlComputadoras.
2. Ubicar conexión
Esta clase se encargará de dar nombre y ubicación a la librería con la interface e métodos
remotos, se recibirá la clase que la implemente para luego ubicarlo en el puerto y la misma
dirección IP de las clases que existen.
Se define un String con el nombre “java.rmi.server.codebase” para llamar así a nuestro objeto
remoto, luego en la línea 16 a 26 se define un método estático que recibe una clase, en la línea
17 se extrae la ruta donde está ubicado el archivo en forma de String, luego en la línea 19 se
extrae las propiedades del equipo de String CODEBASE, como inicialmente está vacío, se le
pone la ruta de la clase que se recibió, luego en la línea 25 se establece la propiedad del
sistema indicado por la el objeto remoto y la ruta vacía.
ServidorRMI
El servidor va a estar compuesto por tres clases lógicas: ObjetoRemotoImple, Cliente y
Servidor.
ObjetoRemotoImple
Cliente
Clase en donde se define el cliente que se conecta al servidor
Método para establecer la conexión con el cliente
Cliente
Esta clase es la que va a tener los atributos y métodos necesarios para establecer una conexión
con el ServidorRMI.
Método para iniciar conexión con el ServidorRMI
Orden
Clase que implementara los métodos de la interface remota