RMI JAVA - PowerPoint PPT Presentation

1 / 15
About This Presentation
Title:

RMI JAVA

Description:

RMI JAVA. Implementaci n. Caracter sticas. Bajar din micamente componentes de java ... double suma(double x, double y) throws RemoteException; ... – PowerPoint PPT presentation

Number of Views:105
Avg rating:3.0/5.0
Slides: 16
Provided by: abels
Category:
Tags: java | rmi | dbl

less

Transcript and Presenter's Notes

Title: RMI JAVA


1
RMI JAVA
  • Implementación

2
Características
  • Bajar dinámicamente componentes de java de un URL
    a JVM, ejecutándose en un proceso diferente.
  • RMI baja y ejecuta el bytecode de clases que no
    están instaladas en el disco.
  • RMI baja los clases especializadas stub, que
    habilita las llamadas a métodos remotos.
  • La noción de codebase origina el uso de
    ClassLoaders en java.

3
ClassLoader
  • Los ClassLoaders necesitan saber la ubicación en
    donde va a serle permitido carga la clase. Es
    usado en conjunción con un servidor HTTP que
    contiene las clases compiladas.

4
Codebase
  • Es la fuente o lugar desde donde se descargan
    clases a un JVM.
  • CLASSPATH es un codebase local.

5
RMI
  • Usando RMI aplicaciones pueden objetos remotos
    que aceptan llamada a métodos desde otros
    clientes en otros JVM.
  • El cliente para que pueda invocar un método
    remoto necesita una manera de comunicarse.
  • RMI usa una clase especial llamada stub, que es
    bajada del codebase.

6
(No Transcript)
7
Server
  • public class CalcServer
  • public static void main(String args)
  • try
  • CalcImpl cal new CalcImpl()
  • Naming.rebind("calculo", cal)
  • catch(Exception e)
  • e.printStackTrace()

8
Implementacion
  • public class CalcImpl extends
    UnicastRemoteObject
  • implements Calc
  • public CalcImpl() throws RemoteException
  • operador1 0
  • operador2 0
  • public double suma(double x, double y) throws
    RemoteException
  • operador1 x
  • operador2 y
  • return operador1 operador2

9
Registrar metodo remoto
  • start rmiregistry
  • cd \myjava\rmi\server
  • start java -Djava.rmi.server.codebasehttp//local
    host8080/download/ CalcServer

10
Interfase
  • import java.rmi.
  • public interface Calc extends Remote
  • double suma(double x, double y) throws
    RemoteException
  • double resta(double x, double y) throws
    RemoteException
  • double multiplica(double x, double y) throws
    RemoteException
  • double divide(double x, double y) throws
    RemoteException

11
Cliente
  • public class CalcClient
  • public static void main(String args)
  • System.setProperty("java.security.policy",
    "client.policy")
  • System.setSecurityManager(new
    RMISecurityManager())
  • try
  • Calc c1 (Calc)Naming.lookup
    ("rmi//127.0.0.11099/calculo")
  • System.out.println(c1.suma(8,5))
  • catch(Exception e)
  • e.printStackTrace()

12
Policy
  • grant
  • permission java.net.SocketPermission
  • "127.0.0.11-65535", "connect"
  • permission java.net.SocketPermission
  • "127.0.0.18080", "connect"

13
Estructura
  • Server
  • CalcServer (-Djava.rmi.server.codebase
    http//localhost8080/download/)
  • Calc
  • CalcImpl
  • Download
  • Calc
  • CalcImpl_Stub (rmic keep)
  • Client
  • Calc
  • CalcClient
  • Client.policy (seguridad)

14
Conclusión
  • Deshabilitar las NIC que no se utilizan.
  • Ejecutar start rmiregistry en el DOS shell.
  • Verificar permisos en policy file
  • Instalar un WEB server (apache).
  • Deshabilitar/reconfigurar firewall

15
Preguntas y respuestas
  • Que es lo que sigue?
Write a Comment
User Comments (0)
About PowerShow.com