PROGRAMACION DISTRIBUIDA MobileTracker: Ejemplo de implementación con RMI
|
|
- Enrique Ávila Arroyo
- hace 8 años
- Vistas:
Transcripción
1 PROGRAMACION DISTRIBUIDA MobileTracker: Ejemplo de implementación con RMI Héctor Pérez 2 MobileTracker: Especificación El computador de la torre de control ejecuta el servicio Follower que registra los datos telemétricos que le envían los clientes Mobile El computador del coche ejecuta el cliente Mobile que obtiene los datos de telemetría propios y los registra en el servidor Follower El computador de la torre de control también contiene el rmiregistry, en el que se registra el servidor Follower con la clave JaramaFollower Torre de control Telemetría Coche A Coche B Circuito del Jarama El computador del coche conoce el IP del computador de la torre de control y la clave con la que se registra en el rmiregistry. (La recibe como argumento en el lanzamiento)
2 3 MobileTracker: Diseño 4 MobileTracker: Ejecución Concurrente putposition() «protected» mobile:mobile buffer:buffer follower:follower MobileProcessor FollowerProcessor Distribuida mobile:mobile putposition() «protected» buffer:buffer bind() follower:follower rmiregistry RMI Middleware RMI Middleware Ethernet
3 5 MobileTracker: MobilePartition MobilePartition MobileRMILauncher main() «main» MobileRMILauncher + main(args:string[]) Se interpretan los argumentos followername= args[0]; registryip=args[1]; Se obtiene el acceso al rmiregistry registry = LocateRegistry.getRegistry(RegistryIP); Mobile + Mobile(buff:RemoteBuffer) + run() Se obtiene la referencia remota del servidor buffer=(bufferremote) registry.lookup(followername); Se construye el objeto de negocio new Mobile(buffer); 6 MobileTracker: FollowerPartition FollowerPartition FollowerRMILauncher main() «main» FollowerRMILauncher + main(args:string[]) Se construyen los objetos de negocio buffer=new Buffer(); follower=new Follower(buffer); Se Se obtiene invoca el el outpustream Se crea el rmiregistry servicio requerido registry = LocateRegistry.createRegistry(1099); Se registra Se Se obtiene invoca el el rmiregistry el outpustream servicio requerido el servidor registry.bind("jaramafollower", buffer); «remoteinterface» BufferRemote + putposition() + Buffer() + putposition() + getposition() + finalize() «protected» Buffer Follower + Follower(buff:RemoteBuffer) + run() buff
4 Estructura de paquetes grant { permission java.security.allpermission; ; grant{ permission java.security.allpermission; ; 8 Código fuente (1/5): Interfaz remota package common; import java.rmi.remote; // Interfaz remota que define los métodos del servidor que son accesibles por RMI public interface BufferRemote extends Remote { // Método del servidor Follower accesible remotamente boolean putposition (long time, double x, double y, double z) throws java.rmi.remoteexception;
5 9 Código fuente (2/5): MobileRMILauncher (cliente) package mobilepartitionrmi; import java.rmi.remoteexception; import java.rmi.registry.locateregistry; import java.rmi.registry.registry; import common.bufferremote; public class MobileRMILauncher { public static void main(string[] args) { String FollowerName = args[0]; // Argumento [0] Nombre de registro del servidor String RegistryIP = args[1]; // Argumento [1] IP del registro RMI (puerto estándar 1099) Registry registry = null; // Referencia el registro donde buscar al servidor BufferRemote buffer = null; // Referencia remota (stub) del servidor try { // Se localiza el Registry en el computador que se ha pasado como argumento registry = LocateRegistry.getRegistry(RegistryIP); catch (RemoteException re){ System.out.println("No se ha podido localizar el rmiregistry local"); System.exit(-1); try { // Se obtiene del Registry la referencia remota al servidor en base a la clave FollowerName buffer = (BufferRemote) registry.lookup(followername); catch(exception e){ System.out.println("El Follower de nombre "+FollowerName+" no está registrado"); System.exit(-1); new Mobile(buffer); // Se construye el objeto Mobile al que se pasa la referencia remota como parámetro 10 Código fuente (3/5): Mobile (cliente) package mobilepartitionrmi; import java.rmi.remoteexception; import java.util.linkedlist; import common.bufferremote; public class Mobile extends Thread { BufferRemote buffer; // La clase es activa // Referencia remota al servidor public Mobile(BufferRemote buff){ // Se le pasa la referencia remota en el constructor this.buffer = buff; start();... public void run(){ // Actividad del móvil... try { // Interfaz remota if (buffer.putposition(pos.time,pos.x,pos.y,pos.z)) { pendingpos.removefirst(); else {break; catch (RemoteException re){ // Tratar el posible error en el acceso remoto System.out.println("Se ha producido una RemoteException en Mobile"); turnoff();...
6 11 Código fuente (4/5): FollowerRMILauncher (servidor) package followerpartition; import java.rmi.*; public class FollowerRMILauncher { public static void main(string[] args) { Buffer buffer = null; // Se declaran los objetos de negocio Follower follower = null; try { buffer = new Buffer(); // Se exporta automáticamente follower = new Follower(buffer); catch(remoteexception re1){... // Se crea el rmiregistry en el computador local (uso del puerto estándar 1099) Registry registry = null; try { registry = LocateRegistry.createRegistry(1099); catch(remoteexception re2){... try { // Se registra la ref. remota con el nombre "JaramaFollower registry.bind("jaramafollower", buffer); catch (Exception e){... System.out.println("EL SERVIDOR JARAMAFOLLOWER ESTÁ INSTALADO"); 12 Código fuente (5/5): Buffer (servidor) package followerpartition; import java.rmi.*; import java.util.linkedlist; import common.*; public class Buffer extends UnicastRemoteObject implements BufferRemote { protected Buffer() throws RemoteException { // Constructor super(); private static final long serialversionuid = 1L;... // Declaración del método remoto synchronized public boolean putposition(long time, double x, double y, double z) {... // Declaración de métodos no remotos synchronized public Position[] getposition() {... // Método que finaliza el servidor protected void finalize(){ try { UnicastRemoteObject.unexportObject(this, true); catch (NoSuchObjectException e) {
7 13 RCSD: José M. Drake y Héctor Pérez MobileTracker: Gestor de seguridad Debemos configurar las propiedades de la JVM de acuerdo a las políticas de seguridad establecidas En caso necesario, también debería activarse el gestor de seguridad en el código 14 RCSD: José M. Drake y Héctor Pérez MobileTracker: Variaciones (1/4) Cómo implementar el ejemplo si Follower se ejecutara en otro nodo (cliente)? «protected» getposition() putposition() mobile:mobile buffer:buffer follower:follower finalize() MobilePartition BufferPartition FollowerPartition
8 15 Variaciones: Follower ejecutado en otro nodo (1/3) package common; import java.rmi.remote; // Interfaz remota que define los métodos del servidor que son accesibles por RMI public interface BufferRemote extends Remote { // Método del servidor Follower accesible remotamente boolean putposition (long time, double x, double y, double z) throws java.rmi.remoteexception; public Position[] getposition() throws java.rmi.remoteexception; void finalize() throws java.rmi.remoteexception; 16 Variaciones: Follower ejecutado en otro nodo (2/3) package common; import java.io.serializable; public class Position implements Serializable { public long time; public double x; public double y; public double z; // Constructor public Position(long t,double x,double y,double z){ this.time=t; this.x=x; this.y=y; this.z=z;
9 17 Variaciones: Follower ejecutado en otro nodo (3/3) Modificaciones en la clasefollower Invocaciones de los métodos remotos a través del stub Manejo de excepciones en las nuevas invocaciones remotas Nueva clase principal para el servidor debuffer BufferRMILauncher Nueva clase principal para el clientefollower FollowerRMILauncher 18 RCSD: José M. Drake y Héctor Pérez MobileTracker: Variaciones (2/4) Cómo implementar el ejemplo si Follower se ejecutara en otro nodo(cliente)? Y si fuera necesario restringir el acceso a un conjunto de coches concreto?
10 19 RCSD: José M. Drake y Héctor Pérez MobileTracker: Variaciones (3/4) Cómo implementar el ejemplo si Follower se ejecutara en otro nodo(cliente)? Y si fuera necesario restringir el acceso a un conjunto de coches concreto? Cambiaría la implementación si tuviéramos que añadir otro servidor RMI en el nodo? 20 RCSD: José M. Drake y Héctor Pérez MobileTracker: Variaciones (4/4) Cómo implementar el ejemplo si Follower se ejecutara en otro nodo(cliente)? Y si fuera necesario restringir el acceso a un conjunto de coches concreto? Cambiaría la implementación si tuviéramos que añadirotroservidorrmienelnodo? Cómo exportar de forma explícita un objeto remoto?
11 21 Variaciones: Buffer exportado explícitamente (1/3) FollowerRMILauncher main() FollowerPartition Se construyen los objetos de negocio buffer=new Buffer(); follower=new Follower(buffer); «main» FollowerRMILauncher + main(args:string[]) Se registra el objeto remoto en el RMI bufferremote =(BufferRemote) UnicastRemoteObject.exportObject(buffer,0); «remoteinterface» BufferRemote + putposition() Follower + Follower(buff:RemoteBuffer) + run() Se Se obtiene invoca el el outpustream Se crea el rmiregistry servicio requerido registry = LocateRegistry.createRegistry(1099); Se registra Se Se obtiene invoca el el rmiregistry el outpustream servicio requerido el servidor registry.bind("jaramafollower", bufferremote); + Buffer() + putposition() + getposition() + finalize() «protected» Buffer buff 22 Variaciones: Buffer exportado explícitamente (2/3) package followerpartition; import java.rmi.*; import java.rmi.server.unicastremoteobject; import common.*; public class FollowerRMILauncher { public static void main(string[] args) { Buffer buffer = new Buffer(); Follower follower = new Follower(buffer); // Se crea los objetos de negocio // Se crea la ref. remota registrando el objeto Buffer en el RMI BufferRemote bufferremote = null; try { bufferremote =(BufferRemote)UnicastRemoteObject.exportObject(buffer,0); catch(remoteexception re){... // Se crea el rmiregistry en el computador local (haciendo uso del puerto estándar 1099) Registry registry = null; try { registry = LocateRegistry.createRegistry(1099); catch(remoteexception re){... // Se registra la ref. remota con el nombre "JaramaFollower try { registry.bind("jaramafollower", bufferremote); catch (Exception e){... System.out.println("EL SERVIDOR JARAMAFOLLOWER ESTÁ INSTALADO");
12 23 Variaciones: Buffer exportado explícitamente (3/3) package followerpartition; import java.rmi.nosuchobjectexception; import java.rmi.server.unicastremoteobject; import java.util.linkedlist; import common.*; public class Buffer implements BufferRemote { // Clase del servidor que ofrece la interfaz remota... // Declaración del método remoto synchronized public boolean putposition(long time, double x, double y, double z) {... // Declaración de métodos no remotos synchronized public Position[] getposition() {... // Método que finaliza el servidor protected void finalize(){ try { UnicastRemoteObject.unexportObject(this, true); catch (NoSuchObjectException e) { 24 RCSD: José M. Drake y Héctor Pérez Bibliografía JavaOracleDocumentation Única fuente de información actualizada JavaRMI by William Grosso, O'Reilly, 2001
PROGRAMACION DISTRIBUIDA
PROGRAMACION DISTRIBUIDA Ejemplo de uso de estrategias de diseño con RMI Héctor Pérez 2 Ejemplo de callback: SwiftEagle shot() setdirection() Target nearnessreport(target,observer) signal? explode() SwiftEagle
Más detallesPROGRAMACION DISTRIBUIDA
PROGRAMACION DISTRIBUIDA Distribución basada en el patrón proxy-servant Héctor Pérez 2 Distribución de aplicaciones basadas en objetos Objetivo: rediseño de una aplicación orientada a objetos para ser
Más detallesIngeniería del Software Arquitectura Física en 3 niveles
Introducción En este laboratorio desplegaremos en 3 niveles físicos una aplicación que verifica si una cuenta y un password son correctos, basada en la que fue presentada en el laboratorio Separación entre
Más detalles1. Visión general de RMI
1. Visión general de RMI Java RMI permite al programador ejecutar métodos de objetos remotos utilizando la misma semántica que si fueran invocaciones locales (Véase Figura 1). Máquina Local (Cliente) Máquina
Más detallesJava RMI. Sistemas Distribuidos Rodrigo Santamaría
+ Java RMI Sistemas Distribuidos Rodrigo Santamaría RMI Java RMI 2 + RMI 3 Remote Method Invocation: middleware para que un objeto que se ejecuta en una JVM use métodos de otro objeto que se ejecuta en
Más detallesModelo de Objetos Distribuidos
Remote Method Invocation Modelo de Objetos Distribuidos Un objeto remoto es un objeto cuyos métodos pueden ser invocados desde otra máquina virtual de java, potencialmente en un host diferente. Modelo
Más detallesJAVA RMI (REMOTE METHOD INVOCATION)
JAVA RMI (REMOTE METHOD INVOCATION) RMI RMI (Remote Method Invocation) Mecanismo RPC de Mecanismo mediante el cual los procesos cliente y servidor en una aplicación distribuida se comunican Una aplicación
Más detallesJava RMI Remote Method Invocation. Invocación Remota de Métodos en Java
Java RMI Remote Method Invocation Invocación Remota de Métodos en Java Contenido Introducción Implementación Diseño de la interfaz remota. Implementación de la interfaz remota. Obtención de las clases
Más detallesJava RMI. las RPC de Java. Parte I. Luis Fernando Llana Díaz. Departamento de Sistemas Informáticos y ProgramaciónUniversidad Complutense de Madrid
las RPC de Java. Parte I Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid de marzo de 006 RMI y RPC RPC: Remote Procedure Call. RMI y RPC RPC: Remote Procedure Call.
Más detallesen otra máquina exactamente de la misma manera que si se encontrará en la misma máquina
Máquina A Máquina B Máquina C Lo ideal sería tener un sistema distribuido orientado a objetos que permita: 1)Invocar un método de un objeto que se localiza en otra máquina exactamente de la misma manera
Más detallesSistemas Distribuidos Java RMI (Remote Method Invocation) Alberto Lafuente Mikel Larrea Dpto. ATC, UPV/EHU
Sistemas Distribuidos Java RMI (Remote Method Invocation) Alberto Lafuente Mikel Larrea Dpto. ATC, UPV/EHU Contenido Interfaz Implementación Servidor Cliente Puesta en marcha de la aplicación: Compilador
Más detallesDISEÑO DE UNA ARQUITECTURA CLIENTE/SERVIDOR MEDIANTE OBJETOS DISTRIBUIDOS EN JAVA
DISEÑO DE UNA ARQUITECTURA CLIENTE/SERVIDOR MEDIANTE OBJETOS DISTRIBUIDOS EN JAVA José Luis Pastrana Brincones (pastrana@lcc.uma.es) Dpto. Lenguajes y Ciencias de la Computación. Universidad de Málaga
Más detallesCódigo Fuente. Creamos en C:\ una carpeta para ubicar el código fuente del servidor. En mi caso, he creado una carpeta denominada rmi4
EL EJEMPLO El proceso servidor provoca un eco de la entrada de teclado enviada por el proceso cliente. Por sencillez, ejecutaremos tanto el servidor como el cliente en la máquina local. El sistema operativo
Más detallesCONTENIDO. Serialización. Carga dinamica de stubs RMI AVANZADO. Callbacks. Carga dinámica de Stubs
CONTENIDO RMI AVANZADO Carga dinamica de stubs Callbacks Carga dinámica de Stubs Para tener acceso a un objeto remoto mediante RMI, el cliente debe recibir un stub serializado y deserializarlo. El stub
Más detallesRMI [Remote Method Invocation]
RMI [Remote Method Invocation] Cuando utilizamos sockets, hemos de preocuparnos de cómo se transmiten físicamente los datos entre los extremos de una conexión (a nivel de bytes, ya que usamos los streams
Más detallesPráctica 2: Java Remote Method Invocation (RMI)
Práctica 2: Java Remote Method Invocation (RMI) Aplicaciones Telemáticas II Introducción El objetivo de esta práctica es conocer un poco más sobre el paradigma de objetos remotos. La idea principal es
Más detallesSistemas Distribuidos (Capítulo 8 de Distributed Computing de M. L. Liu)
Devoluciones de llamada en RMI (Callbacks) Sistemas Distribuidos (Capítulo 8 de Distributed Computing de M. L. Liu) Devolución de llamadas, introducción Cliente-servidor clásico servidorpasivo Tipo pull.
Más detallesPráctica 4: Java Remote Method Invocation (RMI)
Práctica 4: Java Remote Method Invocation (RMI) Aplicaciones Telemáticas II Introducción Hasta el momento hemos visto aplicaciones remotas donde un cliente utiliza un objeto remoto que ha sido publicado
Más detallesArquitectura Cliente/Servidor. Invocación de Métodos Remotos RMI: Remote Method Invocation. Llamadas a Métodos Remotos
Invocación de Métodos Remotos RMI: Remote Method Invocation Prof Wílmer Pereira Universidad Simón Bolívar Arquitectura Cliente/Servidor Cliente Request Reply Servidor Cómo permitir comunicación entre objetos
Más detallesInteracción entre Aplicaciones: objetos distribuidos e invocación remota
Interacción entre Aplicaciones: objetos distribuidos e invocación remota En la anterior práctica se ha visto cómo extender la funcionalidad de un servidor web incorporando servlets que atienden peticiones
Más detalles5.1 Introducción a las tecnologías de objetos distribuidos con Java RMI
5.1 Introducción a las tecnologías de objetos distribuidos con Java RMI Contenidos Tutorial de Java RMI Caso de estudio: diseño e implementación de la capa modelo de MiniBank con Java RMI Arquitectura
Más detallesJAVA - Serializacíon / RMI. (C) Philippe Roose - 2004, 2005
JAVA - Serializacíon / RMI (C) Philippe Roose - 2004, 2005 Serializar objetos- concepto Desde el JDK 1.1 Serializar objetos permite de escribir un objeto en un fichero como un flujo de octets (archivo
Más detallesSISTEMAS DISTRIBUIDOS
Sesión 5: Tema 8: Objetos Distribuidos e Invocación Remota. Java RMI SISTEMAS DISTRIBUIDOS GRADO EN INGENIERÍA INFORMÁTICA UNED Introducción Índice (1/2) Modelos de programación de aplicaciones distribuidas.
Más detallesFSD Práctica Invocación Remota: JavaRMI. Estudio Previo. Información
FSD Práctica Invocación Remota: JavaRMI Tipo de entrega: por grupos de prácticas Fecha límite: sesión de laboratorio Lugar: Campus Digital Comentario: No hay que entregar el estudio previo Objetivo de
Más detallesIntroducción Descripción del servicio
507953 1 Contenido Contenido Cambios Introducción Descripción del servicio Introducción Arquitectura Paso a paso Capa de negocio Adapter Interface Service Proxy Fichero de propiedades Despliegue del servicio
Más detallesJava RMI. Sistemas distribuidos
Java RMI Sistemas distribuidos Entornos orientados a objetos Tendencia actual hacia sistemas compuestos por un conjunto de objetos que interactúan entre sí. Un programa solicita servicios invocando los
Más detallesEl servicio de echo en Java-RMI
PRÁCTICA 3 El servicio de echo en Java-RMI E l objetivo de esta práctica es crear y ejecutar una aplicación cliente servidor echo basada en java-rmi. La práctica tiene dos partes: La primera parte implementa
Más detallesFRAMEWORK 2 Recepción de SMS
FRAMEWORK 2 Versión 1.1 Área de Integración y Arquitectura de Aplicaciones Hoja de Control Título Documento de Referencia Responsable FW2_MUS_Recepcion_SMS Área de Integración y Arquitectura de Aplicaciones
Más detallesInvocación de métodos remotos en Java: JAVA - RMI
Diseño Y Aplicaciones de Sistemas Distribuidos Invocación de métodos remotos en Java: JAVA - RMI Joan Vila DISCA / UPV Departament d Informàtica de Sistemes i Computadors Universitat Politècnica de València
Más detallesCAPITULO 3 ARQUITECTURA DE COMPONENTES GIS EN INTERNET
CAPITULO 3 ARQUITECTURA DE COMPONENTES GIS EN INTERNET 3.1- ARQUITECTURA DE COMPONENTES GIS La presente tesis trata del diseño y desarrollo de una aplicación basado en el Web para servir datos geográficos
Más detallesEjercicio 4. EJB Sesión - Sistema SGA. Java EE. Ejercicio 4. EJB Sesión Sistema SGA. Curso de Java EE
Java EE Ejercicio 4 EJB Sesión Sistema SGA Objetivo del Ejercicio El objetivo del ejercicio es agregar un EJB de Sesión a nuestro proyecto SGA (Sistema de Gestión de Alumnos), el cual desarrollaremos a
Más detallesLlamada a métodos remotos (RMI). Curso 04/05. Tema 9. Departament d Informàtica. Universitat de València. 1. Introducción 2
Tema 9 Llamada a métodos remotos (RMI). Departament d Informàtica. Índice 1. Introducción 2 1.1. Cómo funciona RMI?.......................................... 2 2. Usando RMI 4 2.1. Fase de desarrollo:
Más detallesIdentificadores, palabras reservadas, tipos de datos, operadores aritméticos y el sistema estándar de salida en Java
Identificadores, palabras reservadas, tipos de datos, operadores aritméticos y el sistema estándar de salida en Java Identificadores Las variables se utilizan en programación para almacenar temporalmente
Más detallesA. Goñi, J. Ibáñez, J. Iturrioz, J.A. Vadillo OCW 2013
4.3: Computación distribuida: Java RMI A. Goñi, J. Ibáñez, J. Iturrioz, J.A. Vadillo OCW 2013 Indice RMI: Introducción Construcción de aplicaciones RMI Dfii Definir Interfaz remota Implementar interfaz
Más detallesUna introducción a Java RMI
Una introducción a Java RMI César Llamas Bello Estas transparencias no hubieran sido posible sin el tutorial de José M. Vidal Swearingen Engineering Center, University of South Carolina, Columbia Introducción
Más detallesIntroducción a Java LSUB. 15 de enero de 2015 GSYC
Introducción a LSUB GSYC 15 de enero de 2015 (cc) 2014 Laboratorio de Sistemas, Algunos derechos reservados. Este trabajo se entrega bajo la licencia Creative Commons Reconocimiento - NoComercial - SinObraDerivada
Más detallesRemote Method Invocation (RMI)
Que deseamos hacer con objetos remotos Remote Method Invocation (RMI) Basado en: Fundamentals of RMI. Short Course. JGuru. Cliente Result = Obj.method1(val1) Servidor Def Obj { int method1(int v) { string
Más detallesMONITORES EN JAVA. Antonio Tomeu Control de la Concurrencia en Java: API Estándar
MONITORES EN JAVA Un monitor es un objeto que implementa acceso bajo e.m. a todos sus métodos, y provee sincronización En Java, son objetos de una clase cuyos métodos públicos son todos synchronized Un
Más detallesRepaso de las características más importantes de la programación Java y su adaptación a Android
Repaso de las características más importantes de la programación Java y su adaptación a Android 1. Entorno de programación en java 2. Variables y tipos de datos 3. Operaciones y operadores 4. Clases y
Más detallesIntroducción. 50,SURSRUFLRQDFRPXQLFDFLyQUHPRWDHQWUHSURJUDPDVHVFULWRVHQHOOHQJXDMHGH SURJUDPDFLyQ-DYD
6LVWHPDV'LVWULEXLGRV 5HPRWH0HWKRG,QYRFDWLRQ $UWXUR'tD]3pUH] Sección de Computación Departamento de Ingeniería Eléctrica CINVESTAV-IPN Av. Instituto Politécnico Nacional No. 2508 Col. San Pedro Zacatenco
Más detallesVII.1: RMI: Remote Method Invocation
PROGRAMACION CONCURRENTE Y DISTRIBUIDA VII.1: RMI: Remote Method Invocation Posibilidades que ofrece Java para la comunicación en red: Socket,RMI y URL. 1 Sistemas distribuidos basados en middleware Client
Más detallesPráctica sobre compartición de instancias remotas.
Práctica sobre compartición de instancias remotas. Para esta práctica se ha construido un pequeño sistema cliente-servidor que permite la resolución de Sudokus entre varios jugadores. El servidor consta
Más detallesRemote Method Invocation (RMI) de Java
Remote Method Invocation (RMI) de Java Concurrencia y Distribución Programación Avanzada Posgrado en Ciencia e Ingeniería de la Computación, UNAM 1. Introducción El mecanismo RMI (Remote Method Invocation)
Más detallesUniversidad ORT - Arquitectura de Software. Requisitos
Requisitos Versión 1.5 (o superior) de la JDK de Java NetBeans 6.5 como IDE de desarrollo JBoss 4.2.x como Application Server Variable de entorno de Windows JAVA_HOME apuntando al directorio de instalación
Más detallesJAVA RMI: ESTRUCTURA INTERNA RMI
Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas Desarrollo de Aplicaciones Distribuidas AUTORES: Alejandro Calderón Mateos Javier García Blas David Expósito Singh Laura Prada Camacho Departamento
Más detallesComponentes Distribuidos EJBs. Ing. Cesar Julio Bustacara Medina
Componentes Distribuidos EJBs Ing. Cesar Julio Bustacara Medina Introducción La Clase del Bean Contiene la lógica del Enterprise Bean. Es una clase Java pública, que implementa los métodos de negocios
Más detallesJames Gosling, creador de Java
Lo que Java intenta hacer y lo hace con bastante éxito, es abarcar dominios diferentes. De esa forma le permite efectuar trabajos para de aplicaciones del lado del servidor, del lado del cliente, para
Más detallesPartes de un programa en Java. A. Ejemplo de un Programa en Java /* Programa Ejemplo de Java: Muestra una Ventana Archivo: Ejemplo1.
Partes de un programa en Java A. Ejemplo de un Programa en Java /* class Ejemplo1 { //comienza la clase Ejemplo1. public static void main(string[] args) { // comienza el método main. JFrame miventana;
Más detallesclass Nombre_Clase extends Nombre_SuperClase { cuerpo de la clase extendida }
REUTILIZACIÓN DE CLASES:MODELO DE HERENCIA EN JAVA Java soporta herencia simple pero no múltiple. Lo hace mediante el mecanismo de extensión de clase. A partir de él, una subclase se extiende (hereda)
Más detallesRMI. Ingeniería del Software II Curso 2009/2010.
RMI Ingeniería del Software II Curso 2009/2010 Sergio Ilarri Artigas Sergio Ilarri Artigas silarri@unizar.es Índice Introducción Stubs y Skeletons (rmic) Objetos Remotos y Objetos Serializables: Interfaz
Más detalles'HVDUUROORGH$SOLFDFLRQHV FRQ-DYD50,
'HVDUUROORGH$SOLFDFLRQHV FRQ-DYD50, /DERUDWRULRGH,QJHQLHUtDGHO6RIWZDUH &RQWHQLGR Antecedentes Introducción a los Sistemas Distribuidos Sockets RPC Java RMI Características Modelo de Objetos Distribuidos
Más detallesObjetos Distribuidos
Objetos Distribuidos Objetos Distribuidos Conceptos Estado: encapsula los datos Métodos: operaciones sobre los datos Interfaz: se utiliza para la disponibilidad de los métodos El Estado y la Interfaz se
Más detallesElementos léxicos del lenguaje de programación Java
Elementos léxicos del lenguaje de programación Java Elementos léxicos del lenguaje de programación Java Palabras reservadas Identificadores Literales Operadores Delimitadores Comentarios Apéndices Operadores
Más detallesUNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INGENIERÍA TELEMÁTICA. Daniel Díaz Sánchez
UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INGENIERÍA TELEMÁTICA Sockets para servidor Daniel Díaz Sánchez Florina Almenárez Andrés Marín Departamento de Ingeniería Telemática Universidad Carlos
Más detallesServicios web con SOAP y Eclipse
PRÁCTICA 8 Servicios web con SOAP y Eclipse E l objetivo de esta práctica es invocar e implementar servicios web en Java desde el entorno Eclipse. La práctica está estructurada en tres partes según se
Más detallesTaller de Programación Estructurada en Java Tema 2. Fundamentos de la programación orientada a objetos
Taller de Programación Estructurada en Java Tema 2. Fundamentos de la programación orientada a objetos Ingeniero en Computación José Alfredo Cobián Campos josealfredocobian@gmail.com Facultad de Ciencias
Más detallesObjetivo de aprendizaje del tema
Computación II Tema 3. Identificadores, palabras clave y tipos de datos Objetivo de aprendizaje del tema Al finalizar el tema serás capaz de: Distinguir i entre modificadores d válidos y no válidos. Enumerar
Más detallesCORBA desde Java. Diego Sevilla Ruiz Sistemas Distribuidos. 1. Introducción
CORBA desde Java Diego Sevilla Ruiz Sistemas Distribuidos Índice 1. Introducción 1 2. Primeros pasos 1 2.1. Fichero IDL................................... 1 2.2. Cliente......................................
Más detallesRemote Method Invocation (RMI) Basado en: Fundamentals of RMI. Short Course. JGuru.
Remote Method Invocation (RMI) Basado en: Fundamentals of RMI. Short Course. JGuru. 1 Paradigmas de desarrollo Desarrollo basado en protocolos Se diseña el protocolo Se elaboran los módulos para manejo
Más detallesInvocación de Métodos Remotos: Prácticas de Laboratorio
Invocación de Métodos Remotos: Prácticas de Laboratorio XIII Jornadas de Enseñanza Universitaria de la Informática Teruel, 16-18 de julio de 2007 Coromoto León Hernández, Gara Miranda Valladares (cleon
Más detallesUso de excepciones en Java
Uso de excepciones en Java En Java, cuando se produce un error en un método, se lanza un objeto Throwable. Cualquier método que haya llamado al método puede capturar la excepción y tomar las medidas que
Más detallesRMI Remote Method Invocation
2 RMI Remote Method Invocation Dr. Víctor J. Sosa Sosa Introducción La invocación remota de métodos de Java es un modelo de objetos distribuidos, diseñado específicamente para ese lenguaje, por lo que
Más detallesConcurrencia en Java
Concurrencia en Java Concurrencia y Distribución Programación Avanzada Posgrado en Ciencia e Ingeniería de la Computación, UNAM 1. El mecanismo de threads Una aplicación Java o applet puede contener secciones
Más detallesJava RMI. las RPC de Java. Parte II. Luis Fernando Llana Díaz. Departamento de Sistemas Informáticos y ProgramaciónUniversidad Complutense de Madrid
las RPC de Java. Parte II Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid de marzo de 00 Distribución de clases I Es conveniente distinguir: servidor. Necesarias
Más detalles2) Cual modificador limita el acceso a un método de una clase pública a los miembros de la misma clase?
PRTIIPNT: MPRS: H: xamen de iagnóstico Programador Java Instrucciones: Lea cada pregunta cuidadosamente y marque la(s) respuesta(s) que sean correctas. 1) ada la siguiente clase: 1. class rrayopy3{ 2.
Más detallesAPELLIDOS:... NOMBRE:... GRUPO:... NÚMERO DE EXPEDIENTE:...
Cuadernillo de examen ASIGNATURA Laboratorio de Sistemas Operativos Abiertos (Java) CÓDIGO 321 CONVOCATORIA Extraordinaria de Septiembre de 2003 PLAN DE ESTUDIOS 1996 ESPECIALIDAD Sistemas CURSO 2002/2003
Más detallesProgramación Concurrente en Java
Hebras y monitores Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid 21 de marzo de 2006 Threads Extendiendo la clase java.lang.thread. public class PrThread extends
Más detallesTema 3. Objetos distribuidos
Tema 3. Objetos distribuidos SCS Sistemas Cliente/Servidor 4 o informática http://ccia.ei.uvigo.es/docencia/scs octubre 2008 FJRP, FMBR 2008/09 ccia SCS 3.1 Modelo de objetos distribuidos Objetivo: Extender
Más detallesPráctica 5: Common Object Request Broker Architecture CORBA
Práctica 5: Common Object Request Broker Architecture CORBA Aplicaciones Telemáticas II Introducción El objetivo de esta práctica es entender mejor el funcionamiento de CORBA (Common Object Request Broker
Más detallesSISTEMAS DISTRIBUIDOS Profesor: José Luis Montoya Restrepo
SISTEMAS DISTRIBUIDOS Profesor: José Luis Montoya Restrepo AGENDA El modelo Cliente Servidor. Introducción a RMI Practica Cliente Servidor utilizando RMI. Modelo Cliente Servidor El modelo Cliente Servidor
Más detallesJava nos ofrece la clase Thread y la interfaz Runable que permiten que varios procesos estén funcionando de forma concurrente.
Threads (hilos) Java nos ofrece la clase Thread y la interfaz Runable que permiten que varios procesos estén funcionando de forma concurrente. Conceptos: Proceso (thread o hilo): es un programa en ejecución
Más detalles3.9 Patrón Distributed callback
3.9 Patrón Distributed callback Motivación (1) Queremos que la aplicación de administración de los termostatos Monitorize la temperatura de algunos termostatos, avisándonos si ésta baja o sube por encima
Más detallesProgramación Orientada a Objetos. Java: Excepciones
Programación Orientada a Objetos Java: Excepciones Eduardo Mosqueira Rey LIDIA Laboratorio de Investigación y desarrollo en Inteligencia Artificial Departamento de Computación Universidade da Coruña, España
Más detalles2. Estructura de un programa en Java
24 A. García-Beltrán y J.M. Arranz 2. Estructura de un programa en Java Objetivos: a) Describir la estructura del código fuente de una aplicación Java b) Presentar los conceptos de comentario y de identificador
Más detallesMultitarea en Java. Rafa Caballero - UCM
Multitarea en Java Rafa Caballero - UCM Programa Monoproceso (monotarea) En cada momento hay una única instrucción ejecutándose Se dice que el programa es monotarea, o monoproceso o monohebra (o single
Más detallesSISTEMAS DISTRIBUIDOS
Sesión 6: Java RMI. Primeros pasos SISTEMAS DISTRIBUIDOS GRADO EN INGENIERÍA INFORMÁTICA UNED Índice Proyecto básico. Chat abierto. Servicios que ofrece el servidor: Escribir mensaje: escribir(mensaje)
Más detallesExamen de Prácticas de Programación Ingeniería Informática
Examen de Prácticas de Programación Ingeniería Informática Septiembre 2007 1) (3.5 puntos) Se pretende desarrollar un programa para gestionar las reparaciones de coches realizadas en un garaje. Del análisis
Más detallesGESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C)
APRENDERAPROGRAMAR.COM GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C) Sección: Cursos Categoría: Lenguaje de programación Java nivel avanzado I
Más detallesTEMA 5: Control de la Concurrencia en Java (API Estándar)
TEMA 5: Control de la Concurrencia en Java (API Estándar) CONTENIDO Exclusión Mutua con código synchronized. Exclusión Mutua con métodos synchronized. Protocolos de Control de la Exclusión Mutua. Interbloqueos
Más detallesPrimer Parcial Septiembre 5 de 2009
Primer Parcial Septiembre 5 de 2009 Algoritmos y Lenguajes II Reglas del juego Tal como se le dijo antes, durante este examen usted no puede pedir ABSOLUTAMENTE nada prestado a sus compañeros, ni hablar
Más detallesTema 2: Programación en Red, RMI
Llamada a procedimientos remotos Tema 2: Programación en Red, RMI 1 2 Previo: Objetos e interfaces en JAVA Object 1 public class Client { private Client() { public static void main(string[] args) { Hello
Más detallesSolución Examen Junio 2007 (a) Ejercicio GeoTaxi (1h 20 min.) Diagrama de Casos de Uso y. Casos de uso (2,5 puntos) Modelo de Dominio (1,5 puntos)
Solución Examen Junio 2007 (a) Ejercicio GeoTaxi (1h 20 min.) Diagrama de Casos de Uso y Casos de uso (2,5 puntos) Modelo de Dominio (1,5 puntos) 1 Actores OPERADOR CLIENTE TAXISTA 2 Actor Cliente Identificarse
Más detallesTema 2. El lenguaje de programación Java (Parte 1)
Programación en Java Tema 2. El lenguaje de programación Java (Parte 1) Luis Rodríguez Baena Facultad de Informática Elementos del lenguaje (I) El juego de caracteres. No utiliza ASCII, sino Unicode de
Más detallesLlamada a procedimientos remotos. Programación en Red, Tema 3: RMI
Tema 3: Programación en Red, RMI 1 Llamada a procedimientos remotos 2 Previo: Objetos e interfaces en JAVA Object 1 Object 2 Interface 1 Data m1 m2 m3 implementation { of methods public class Client {
Más detalles8. Sentencia return y métodos
92 A. García-Beltrán y J.M. Arranz 8. Sentencia return y métodos Objetivos: a) Describir el funcionamiento de la sentencia return b) Interpretar el resultado de una sentencia return en el código fuente
Más detallesRMI. Ingeniería del Software II Curso 2007/2008. Sergio Ilarri Artigas
RMI Ingeniería del Software II Curso 2007/2008 Sergio Ilarri Artigas silarri@unizar.es Índice Introducción Stubs y Skeletons (rmic) Objetos Remotos y Objetos Serializables: Interface Remoto: ejemplo Objeto
Más detallesProgramación Orientada a Objetos con Java
Programación Orientada a Objetos con Java M.C. Jorge Eduardo Ibarra Esquer jorgeeie@uabc.mx Sobrecarga de métodos Java permite la definición de dos o más métodos que tengan el mismo nombre, dentro de la
Más detallesIntroducción al lenguaje Java
Tipo de entrega: Fecha límite: Lugar: Introducción al lenguaje Java por grupos de prácticas sesión de laboratorio Atenea Objetivos de la práctica: Escribir aplicaciones simples en Java Utilizar el entorno
Más detallesLo que necesitaremos para programar en Java, será un editor de texto o IDE y la JDK.
Introducción Java surgió en 1991 dentro de la empresa Sun Microsystems como un lenguaje de programación sencillo y universal destinado a electrodomésticos. La reducida potencia de cálculo y memoria de
Más detallesRMI. Aplicaciones Distribuidas
RMI Aplicaciones Distribuidas Contenido Objetos Distribuidos y RMI. Interface Remota. Clase Implementación. Referencias Remotas. Registro RMI. Paso de parámetros. Descarga dinámica de código. Desarrollo
Más detallesExamen parcial Convocatoria de junio de 2005 FUNDAMENTOS DE LA PROGRAMACIÓN
EJERCICIO 1 (1.5 puntos) Diseñe un conjunto de casos de prueba adecuado para comprobar el funcionamiento de un método encargado de calcular la duración de una llamada telefónica. Entradas Hora de inicio
Más detallesJava en 2 horas. Rodrigo Santamaría
+ Java en 2 horas Rodrigo Santamaría + Generalidades 2 Desarrollado por Sun en 1995 Hereda mucha de la sintaxis de C (1972) Fuertemente tipado y orientado a objetos Aplicaciones compiladas a bytecode Gestión
Más detallesEXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011
EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011 1. (0,75 PUNTOS) Identificad a continuación las sentencias que son ciertas, descartando
Más detallesDesarrollo de Servicios Web con JBuilder
Artículos técnicos Grupo Danysoft: Desarrollo de Servicios Web con JBuilder Segunda parte Oscar Cristobal Ruiz Departamento Java Equipo Grupo Danysoft Enero 2003 - (902) 123146 www.danysoft.com Desarrollo
Más detallesTEMA 7: Paso de Mensajes con RMI
CONTENIDO: TEMA 7: Paso de Mensajes con RMI Conceptos de Programación Distribuida Remote Method Invocation (RMI) en Java El Nivel de Resguardos La Responsable de que Todo Funcione: la interfaz El precompilador
Más detallesEl sueño de todo sistema distribuido
Cómputo Distribuido Mediante RMI (Remote Method Invocation) ) Modelo de objetos Modelo de objetos en sistemas distribuidos El sueño de todo sistema distribuido Máquina A Máquina B Máquina C Lo ideal sería
Más detallesProgramación Orientada a Objetos. Java: Excepciones
Programación Orientada a Objetos Java: Excepciones Eduardo Mosqueira Rey Laboratorio de Investigación y desarrollo en Inteligencia Artificial Departamento de Computación Universidade da Coruña, España
Más detalles1. Sistemas de colas de mensajes 2. Agentes móviles 3. Servicios de red 4. Espacios de objetos
Tema 9. Paradigmas Avanzados de computación distribuida 1. Sistemas de colas de mensajes 2. Agentes móviles 3. Servicios de red 4. Espacios de objetos Tema 9 Paradigmas Avanzados de Computación Distribuida
Más detallesProgramación en Java. Programación en OO
Programación en OO Lección 4:Programación en OO 1. Herencia 2. Modificadores de Acceso 3. Interfaces Herencia Es la acción en la que una clase obtiene los métodos y propiedades definidos en otra clase,
Más detallesEstructura de las Aplicaciones Orientadas a Objetos El patrón Modelo-Vista-Controlador (MVC)
Estructura de las Aplicaciones Orientadas a Objetos El patrón Modelo-Vista-Controlador (MVC) Programación Orientada a Objetos Facultad de Informática Dep. Ingeniería del Software e Inteligencia Artificial
Más detalles