Anda di halaman 1dari 9

Universidad Regional Autnoma de los Andes

FACULTAD DE SISTEMAS MERCANTILES




CARRERA DE SISTEMAS
Asignatura
DESARROLLO CLIENTE SERVIDOR II
Tema: Suma de Polinomios utilizando RMI
Nombre: Cambal Barahona Luis Gerardo
Docente: Ing. Jorge Yaguar
Fecha: 11-07-2014
CARRERA DE SISTEMAS

1

Objetivo

El objetivo de esta prctica es realizar un ejemplo en java RMI, en este caso
realizaremos una suma de polinomios que mediante el envo de dos polinomios desde
el cliente hacia el servidor, este devuelva como resultado la suma de los dos.

Introduccin
RMI (Java Remote Method Invocation) es un mecanismo ofrecido por Java para
invocar un mtodo de manera remota. Forma parte del entorno estndar de ejecucin
de Java y proporciona un mecanismo simple para la comunicacin de servidores en
aplicaciones distribuidas basadas exclusivamente en Java. Si se requiere
comunicacin entre otras tecnologas debe utilizarse CORBA o SOAP en lugar de
RMI.

RMI se caracteriza por la facilidad de su uso en la programacin por estar
especficamente diseado para Java; proporciona paso de objetos por referencia (no
permitido por SOAP), recoleccin de basura distribuida (Garbage Collector distribuido)
y paso de tipos arbitrarios (funcionalidad no provista por CORBA).

A travs de RMI, un programa Java puede exportar un objeto, con lo que dicho objeto
estar accesible a travs de la red y el programa permanece a la espera de peticiones
en un puerto TCP. A partir de ese momento, un cliente puede conectarse e invocar
los mtodos proporcionados por el objeto.

La invocacin se compone de los siguientes pasos:

Encapsulado (marshalling) de los parmetros (utilizando la funcionalidad de
serializacin de Java).
Invocacin del mtodo (del cliente sobre el servidor). El invocador se queda
esperando una respuesta.
Al terminar la ejecucin, el servidor serializa el valor de retorno (si lo hay) y lo
enva al cliente.
El cdigo cliente recibe la respuesta y contina como si la invocacin hubiera sido
local.
CARRERA DE SISTEMAS

2


Procedimiento

Abrimos un IDE para Java, en este caso utilizaremos NetBeans y creamos un nuevo
proyecto llamado PolinomiosRMI.



Figura 1. Nuevo proyecto llamado PolinomiosRMI


Creamos una nueva Interface llamada interfacepolinomios y escribimos el siguiente
cdigo.



Figura 2. Nuevo interface llamada interfacepolinomios.
CARRERA DE SISTEMAS

3

Una vez creada la Interface debemos implementarla, para eso creamos la clase
implementacionRMI y la heredamos de UnicastRemoteObject e implementar
interfacepolinomios, luego ingresamos el siguiente cdigo.









Figura 3. Nuevo clase llamada implementacionRMI.java







CARRERA DE SISTEMAS

4


Luego creamos la clase servidor y la heredamos de UnicastRemoteObject,
implementar interfacepolinomios e ingresamos el siguiente cdigo.









Figura 4. Nueva clase llamada servidor.java






CARRERA DE SISTEMAS

5

Finalmente creamos la clase Cliente y la heredamos de UnicastRemoteObject,
implementar interfacepolinomios e ingresamos el siguiente cdigo.






Figura 5. Nueva clase llamada Cliente.java
CARRERA DE SISTEMAS

6


Ahora para la ejecucin lo vamos a hacer mediante la ventana de comandos de
Windows, abrimos una ventana y escribimos lo siguiente:


Figura 6. Compilamos nuestra implementacin mediante la consola con los
siguientes cdigos.





Figura 7. Verificamos que se crearon los archivos Stub



Abrimos nuestro proyecto NetBeans y ejecutamos nuestro servidor.


Figura 8. Luego ejecutamos nuestro Servidor.



CARRERA DE SISTEMAS

7

Finalmente abrimos nuestro Cliente lo y ejecutamos. Aqu nos pide que ingresemos el
primer polinomio y el segundo polinomio. Luego de eso el sistema por medio de RMI
nos devuelve el resultado.


Figura 9. Ejecutamos nuestro Cliente y nos devuelve la fecha actual



Conclusiones


Java RMI es un mecanismo ofrecido en Java para invocar un mtodo
remotamente y en este caso pudimos implementar una aplicacin que nos permite
sumar dos polinomios.
La aplicacin es muy parecida a las aplicaciones de prcticas anteriores y por este
motivo podemos decir que podemos utilizar este mtodo para realizar cualquier
tipo de proyecto donde necesitemos invocar mtodos alojados en el servidor.

Recomendaciones

Si se requiere comunicacin con otras tecnologas debe usarse CORBA o SOAP
en lugar de RMI ya que este mtodo funciona solo en servidores con Java
instalado en su mquina.


Bibliografa

http://es.wikipedia.org/wiki/RMI
CARRERA DE SISTEMAS

1

Anda mungkin juga menyukai