remote middleware interface

Páginas: 7 (1505 palabras) Publicado: 5 de julio de 2014
Instituto Politécnico Nacional
Escuela Superior de Computo

RMI
M. en C. José Asunción Enríquez Zárate
asuncionez@gmail.com

Objetos Distribuidos
Ø 

Ø 

Ø 

Modelo de programación basado en los principios de
orientación a objetos para programación distribuida.
Permite la reutilización de las abstracciones comunes de la
programación (objetos, interfaces, métodos ...), (Java,C # ...),
los principios y herramientas de diseño (patrones de diseño,
UML ...)
Cada proceso contiene una colección de objetos, algunos de
los cuales se puede recibir ambos tipos de invocaciones:
Ø 

Ø 

Invocaciones de método entre los objetos en diferentes procesos
se conocen como invocación de métodos remotos,
independientemente de los procesos se ejecutan en el mismo o
diferentesmáquinas.

Objetos distribuidos pueden adoptar una arquitectura clienteservidor.

RMI
Ø 

Java RMI (Remote Method Invocation) es una
extensión de Java que permite la programación de
objetos distribuidos.

M.en C. José Asunción Enríquez Zárate

RMI
Ø 

RMI proporciona invocación de métodos dinámica.
Ø 

Ø 

Un cliente puede invocar un servidor sin conocer qué
métodoscontiene el servidor

La referencia remota permite determinar la
naturaleza del objeto
Ø 
Ø 

Si es local o remoto
Si es remota, si se arranca automáticamente o
necesita ser inicializado

M.en C. José Asunción Enríquez Zárate

RMI
Ø 

Las referencias a objetos remotos son
independientes de plataforma
Ø 

Ø 

Pero hay que usar Java en ambos extremos

El programa“rmiregistry” proporciona acceso a los
objetos remotos.

M.en C. José Asunción Enríquez Zárate

Partes de RMI
Ø 

Interfaz
Ø 

Ø 

Definición de los objetos que serán accedidos
remotamente:
Métodos, con sus parámetros
Ø 
Ø 
Ø 

No se da la implementación de los métodos
Necesario extender el interfaz java.rmi.Remote
En todos los métodos remotos debe indicarse la posibilidad
delanzar la excepción java.rmi.RemoteException

M.en C. José Asunción Enríquez Zárate

Partes de RMI
Ø 

Implementación
Ø 
Ø 

Ø 
Ø 

Es una clase Java normal
E x t i e n d e
l a
c l a s e
java.rmi.server.UnicastRemoteObject, e implementa el
interfaz definido en el paso anterior
Implementa todos los métodos remotos de la interfaz
En el método constructor de esta claseúnicamente se
llama al constructor de la clase UnicastRemoteObject:
super()

M.en C. José Asunción Enríquez Zárate

Partes de RMI
Ø 

Servidor
Ø 
Ø 
Ø 
Ø 

Ø 

Inicia un administrador de seguridad
Crea el objeto que será́ accesible remotamente
Se trata de una instancia de la clase implementación
Registra el objeto remoto (con un nombre dado) en el
servidor de nombres de RMI,mediante el método
Naming.rebind
El servidor puede implementarse en una clase
independiente, o también dentro de la clase
implementación (método main)

M.en C. José Asunción Enríquez Zárate

Partes de RMI
Ø 

Cliente
Ø 
Ø 

Ø 

Inicia un administrador de seguridad
Obtiene una referencia del objeto remoto al que desea
acceder, mediante una petición al servidor de
nombres deRMI
Método Naming.lookup
Ø 

Ø 

Usa el mismo nombre con el que el objeto remoto fue
registrado.

Una vez obtenida la referencia, invoca los métodos
del objeto remoto como si de un objeto local se
tratase, recibiendo los resultados y mostrándolos en la
pantalla
M.en C. José Asunción Enríquez Zárate

Ejemplo RMI
Ø 

Una aplicación básica que dice “Hola Mundo” se
puedecomponer de los siguientes elementos:
Ø 

Ø 
Ø 

Ø 

SaludoApplet/SaludoSwing: un applet/Swing Java que
invoca un método remoto que implementa la interfaz.
Saludo: que se declara como remota.
SaludoImpl: crea un objeto sobre el que se puede
invocar el método “sayHello( )”

El applet puede lanzarse desde una página web o el
“appletviewer”.

M.en C. José Asunción Enríquez Zárate...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Middleware
  • MIDDLEWARE
  • Middleware
  • MIDDLEWARE
  • Interfaces
  • Interfaces
  • Interfaces
  • interfaces

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS