S. Monaghan CSEE, University of Essex. September 21, Client Program and Server Program 3
|
|
- Sophia Pitts
- 6 years ago
- Views:
Transcription
1 CSEE University of Essex CE806 - Distributed Computing ( ) Laboratory 6 Java IDL (Script/code checked and working in Computer Laboratory 1 on 21/9/2010) S. Monaghan CSEE, University of Essex September 21, 2010 Contents 1 Introduction 1 2 Compilation of the IDL 2 3 Client Program and Server Program 3 4 Running the Application 6 5 Investigations 6 6 Summary 6 7 Reference 7 1 Introduction This laboratory is the sixth in a number of weekly self-service laboratory activities to practically support the module CE806 - Distributed Computing. The laboratory is designed to be straightforward and should take no more than one hour to accomplish. Further thought is required though to understand properly the implications of the laboratory work. Although these laboratories are self-service in nature, it is important to carry them out because they build into the coursework assignment associated with the module. The fortnightly CE806 classes will also be concerned with these laboratories.
2 2 COMPILATION OF THE IDL In previous weeks laboratories you ran programs written using the fundamental distributing computing technologies developed 25 years ago - Berkeley Sockets and RPC. With these technologies distributed applications can be built in the C programming language (i.e., they provide two ways to implement the arrows in system diagrams of distributed applications). You also programmed a distributed application using Java RMI, which provides many advantages for distributing computing because of its virtual machine architecture. However, the problem with Java RMI is that it works only for Java. There are many important legacy applications that will not be ported to Java because they are core and critical applications to businesses that have been thoroughly debugged and optimised over the years. The business case for a high cost and risky port to Java might be very hard to make, especially if it means taking away resources from other projects (perhaps written in Java!) that are highly likely to increase revenues and profits. Sun have recognised this by including into their enterprise software J2EE an implementation of CORBA. With such a CORBA implementation, it then becomes possible to interface Java RMI applications to legacy applications through the industry standard CORBA middleware. As we will see this implementation is very similar to the OmbiORB C++ implementation we discussed in the lectures. As this may be the only CORBA code you get to write yourself in CE806 we use the same IDL example as used in the OmniORB demo. 2 Compilation of the IDL Sun s Java implementation of CORBA (there may be other implementations) is called Java IDL. As such it has to use exactly the same IDL as all other implementations on all other languages. To illustrate the use of Java IDL we use the IDL example discussed in the lectures on OmniORB. Here the remote object interface is described by #ifndef ECHO_IDL #define ECHO_IDL interface Echo { string echostring(in string mesg); ; #endif // ECHO_IDL The remote object has an interface with only one (public) method. The client calls this method with a string argument and the method returns the same string back to the client. In Windows create a directory M:\CE806LAB \LAB6 \JavaIDL CSEE, University of Essex 2 September 21, 2010
3 3 CLIENT PROGRAM AND SERVER PROGRAM and copy the above IDL code into the file echo.idl. (If you use Notepad to do this, remember to remove the.txt extension, e.g., by using the rename command on the command line.) Open a command window in the above directory and run Java s CORBA compiler with the command :- idlj -fall echo.idl idlj is the name of Sun s most recent CORBA IDL compiler. The switch tells the compiler to generate both the server and client stub code. Problem. Count the number of java files created by idlj. Briefly look at the classes they contain. Of course in Java, one of the classes has to have the same name as the file. 3 Client Program and Server Program As with all the other RPC-like middleware technologies, the developer needs to carry out two tasks to complete the distributed client-server application. The developer has to write the client program that uses the (automatically created) client stub to call the remote server. The developer also has to write the server functionality to be accessed via the server stub. In the context of CORBA this means that the client program uses an IOR to contact the server and the developer has to implement the servant class derived from a server stub class. Cut and paste into the file EchoServer.java the following server code (remember to remove any junk such as page headers and numbers also copied):- import org.omg.cosnaming.*; import org.omg.cosnaming.namingcontextpackage.*; import org.omg.corba.*; import org.omg.portableserver.*; import org.omg.portableserver.poa; import java.util.properties; class EchoImpl extends EchoPOA { private ORB orb; public void setorb(orb orb_val) { orb = orb_val; // implement echostring() method public String echostring(string mesg) { return mesg; CSEE, University of Essex 3 September 21, 2010
4 3 CLIENT PROGRAM AND SERVER PROGRAM // implement shutdown() method public void shutdown() { orb.shutdown(false); public class EchoServer { public static void main(string args[]) { try{ // create and initialize the ORB ORB orb = ORB.init(args, null); // get reference to rootpoa & activate the POAManager POA rootpoa = POAHelper.narrow(orb.resolve_initial_references("RootPOA")); rootpoa.the_poamanager().activate(); // create servant and register it with the ORB EchoImpl echoimpl = new EchoImpl(); echoimpl.setorb(orb); // get object reference from the servant org.omg.corba.object ref = rootpoa.servant_to_reference(echoimpl); Echo href = EchoHelper.narrow(ref); // get the root naming context org.omg.corba.object objref = orb.resolve_initial_references("nameservice"); // Use NamingContextExt which is part of the Interoperable // Naming Service (INS) specification. NamingContextExt ncref = NamingContextExtHelper.narrow(objRef); // bind the Object Reference in Naming String name = "Echo"; NameComponent path[] = ncref.to_name( name ); ncref.rebind(path, href); System.out.println("EchoServer ready and waiting..."); // wait for invocations from clients orb.run(); catch (Exception e) { System.err.println("ERROR: " + e); CSEE, University of Essex 4 September 21, 2010
5 3 CLIENT PROGRAM AND SERVER PROGRAM e.printstacktrace(system.out); System.out.println("EchoServer Exiting..."); and cut and paste into the file echoclient.java the code import org.omg.cosnaming.*; import org.omg.cosnaming.namingcontextpackage.*; import org.omg.corba.*; public class echoclient { static Echo echoimpl; public static void main(string args[]) { try{ // create and initialize the ORB ORB orb = ORB.init(args, null); // get the root naming context org.omg.corba.object objref = orb.resolve_initial_references("nameservice"); // Use NamingContextExt instead of NamingContext. This is // part of the Interoperable naming Service. NamingContextExt ncref = NamingContextExtHelper.narrow(objRef); // resolve the Object Reference in Naming String name = "Echo"; echoimpl = EchoHelper.narrow(ncRef.resolve_str(name)); System.out.println("Obtained a handle on server object: " + echoimpl); System.out.println(echoImpl.echoString("Hello")); //echoimpl.shutdown(); catch (Exception e) { System.out.println("ERROR : " + e) ; e.printstacktrace(system.out); CSEE, University of Essex 5 September 21, 2010
6 6 SUMMARY 4 Running the Application In the directory javaidl run the command line javac *.java to compile all the java files present in that directory. With the version of compiler used to develop the example a warning is given about one of the files automatically generated by idlj. Ignore the warning as the code will still work. In this example the COS naming service is used so this service has to be started first with the command start orbd -ORBInitialPort 1308 where the last number is the port number on which the name server will run. (If a firewall window pops up, press the cancel button.) Another window will pop up representing the naming service. Note also that a database directory orb.db is created to store the services to be advertised by the COS naming service. With the naming service running, the server can be started so that it registers with the naming service. Using the same window in which the naming service was started, start the server with the command start java EchoServer -ORBInitialPort ORBInitialHost localhost The same command windown (in the javaidl directory) can also be used to start the client program with the command java echoclient -ORBInitialPort ORBInitialHost localhost Explain the output. Look at the code to do this. Note. Here are two cases where the program arguments use CORBA arguments that are used to initialise the ORB in the client and the ORB in the server. This feature was not used in the OmniORB C++ examples shown in the CE806 lectures. 5 Investigations Having now got a CORBA application to work using Java there are now two tasks to carry out. To check you can use Java IDL, modify the above program so that it computes π using Monte Carlo simulation. Proof that you have a working program is that it gives a good approximation to π. If you do not know how already, you will have to find out how to get a supply of random numbers in Java (you should have already done this in the Java RMI laboratory script). The second task is to compare the above Java CORBA application with its OmnORB C++ counterpart. Note especially the similarities in the two programs. 6 Summary In this laboratory you compiled and ran a CORBA distributed application by making use of Sun s Java IDL implementation of the CORBA standard for distributed computing. Java IDL is important to J2EE because it provides the CSEE, University of Essex 6 September 21, 2010
7 7 REFERENCE interface to legacy enterprise code that would be otherwise difficult to access from Java applications. 7 Reference For more information on Java IDL and the code on which this tutorial is based see End of Laboratory CSEE, University of Essex 7 September 21, 2010
Steps to Demonstrate CORBA Application using Java
Steps to Demonstrate CORBA Application using Java The CORBA Application composed of three programs a) idl program -:Which contains the declaration of methods to be called by client and defined by the server
More informationSession plan. sessionx. Desarrollo de Aplicaciones en Red. What s Corba? RPC vs. Corba. Middleware. Middleware task
sessionx Desarrollo de Aplicaciones en Red José Rafael Rojano Cáceres http://www.uv.mx/rrojano General vision Middleware OMA Corba IDL ORB IIOP Examples Session plan What s Corba? Middleware for Programming
More informationThe Common Object Request Broker Architecture (CORBA)
The Common Object Request Broker Architecture (CORBA) CORBA CORBA is a standard architecture for distributed objects systems CORBA is designed to allow distributed objects to interoperate in a heterogenous
More informationDistributed Object-based Systems CORBA
Distributed Object-based Systems CORBA Dr. Yong Guan Department of Electrical and Computer Engineering & Information Assurance Center Iowa State University Outline for Today s Talk Role of CORBA and need
More informationLars Schmidt-Thieme, Information Systems and Machine Learning Lab (ISMLL), Institute BW/WI & Institute for Computer Science, University of Hildesheim
Course on Information Systems 2, summer term 2010 0/28 Information Systems 2 Information Systems 2 3. Distributed Information Systems I: CORBA Lars Schmidt-Thieme Information Systems and Machine Learning
More informationInformation Systems Distributed Information Systems I: CORBA
Information Systems 2 Information Systems 2 3. Distributed Information Systems I: CORBA Lars Schmidt-Thieme Information Systems and Machine Learning Lab (ISMLL) Institute for Business Economics and Information
More informationAssignment 5 Discussion: 4. July 2007
Assignment 5 Discussion: 4. July 2007 Exercise 5.1: IDL A basic concept of CORBA is the separation between interface and implementation. An interface is meant to describe an object s functionality, i.e.
More informationXx Xx xx CORBA. 4 Dr. Ahmed ElShafee, ACU Spring 2011, Distributed Systems
Agenda Lecture (10) CORBA Xx Xx xx Dr. Ahmed ElShafee 1 Dr. Ahmed ElShafee, ACU Spring 2011, Distributed Systems 2 Dr. Ahmed ElShafee, ACU Spring 2011, Distributed Systems Application Diagram Development
More informationImplementacja: /* * JFrame.java */ /** tkubik */
Źródło w IDL: module MTestApp { interface MInformator { long GetCallNumber(); void AddToSum(in long i, out long sum); ; ; Kompilacja: javac -classpath "/home/tkubik/forte4j/sources/:.mtestapp/" *java MTestApp/*java
More informationNOKIA M2M PLATFORM ACTIVE NAMINGCONTEXT PROGRAMMING GUIDE. Copyright 2002 Nokia. All rights reserved. Issue
NOKIA M2M PLATFORM ACTIVE NAMINGCONTEXT PROGRAMMING GUIDE Copyright 2002 Nokia. All rights reserved. Issue 1.2 9354562 Contents ABBREVIATIONS...2 1. INTRODUCTION...3 2. ACTIVE NAMINGCONTEXT...4 2.1 ANC
More informationCORBA CASE STUDY Introduction 20.2 CORBA RMI 20.3 CORBA services 20.4 Summary
20 CORBA CASE STUDY 20.1 Introduction 20.2 CORBA RMI 20.3 CORBA services 20.4 Summary CORBA is a middeware design that allows application programs to communicate with one another irrespective of their
More informationinside: THE MAGAZINE OF USENIX & SAGE June 2001 Volume 26 Number 3 PROGRAMMING Using CORBA with Java by Prithvi Rao
THE MAGAZINE OF USENIX & SAGE June 2001 Volume 26 Number 3 inside: PROGRAMMING Using CORBA with Java by Prithvi Rao # & The Advanced Computing Systems Association & The System Administrators Guild using
More informationDistributed Software Systems
RMI Programming Distributed Software Systems RMI Programming RMI software Generated by IDL compiler Proxy Behaves like remote object to clients (invoker) Marshals arguments, forwards message to remote
More informationDepartment of Computer Science & Engineering. M.Tech(CSE)-I Year-II Semester WEB SERVICES AND SERVICE ORIENTED ARCHITECHTURE (B1513) Mr.K.
Department of Computer Science & Engineering M.Tech(CSE)-I Year-II Semester WEB SERVICES AND SERVICE ORIENTED ARCHITECHTURE (B1513) By Mr.K.Yellaswamy Assistant Professor CMR College of Engineering & Technology,
More informationMiddleware services RT- CORBA. Making an application to CORBA. Distributed objects. Distribution issues, global state, clusters, CORBA, etc
WEEK 10 Distributed objects Distribution issues, global state, clusters, CORBA, etc Stallings, Chapters 14 & 15 + Appendix B Prev. edition; Chapters 13&14 invokes a method machine proxy OS same interface
More information6 Distributed Object-Based Systems
CA464: DISTRIBUTED PROGRAMMING 1 6 Distributed Object-Based Systems 6.1 Architecture Remote distributed objects Data and operations encapsulated in an object Operations implemented as methods grouped into
More information2. Java IDL and CORBA
2. Java IDL and CORBA This lecture was developed by Russ Tront, Instructor, School of Computing Science, Simon Fraser University email: tront@sfu.ca Section Table of Contents 32. JAVA IDL AND CORBA POA...
More informationCORBA COMMON OBJECT REQUEST BROKER ARCHITECTURE OVERVIEW OF CORBA, OMG'S OBJECT TECHNOLOGY FOR DISTRIBUTED APPLICATIONS CORBA
CORBA COMMON OBJECT REQUEST BROKER ARCHITECTURE OVERVIEW OF CORBA, OMG'S OBJECT TECHNOLOGY FOR DISTRIBUTED APPLICATIONS Peter R. Egli 1/27 Contents 1. What is CORBA? 2. CORBA Elements 3. The CORBA IDL
More informationCorba. Distributed Object Systems 5 Corba/Activation/POA. Interaction with ORB. ORB init. Object references. ORB init. slides5.pdf March 10,
Distributed Object Systems 5 Corba/Activation/POA Piet van Oostrum Mar 11, 2009 Corba Today: Interaction with the ORB Object references Activation Object Adapters Implementation Repository Next time: Naming
More informationAspect Repository ORB. Application. Aspect3. Location C
s in Distributed Environments E. Pulvermuller, H. Klaeren, and A. Speck Wilhelm-Schickard-Institut fur Informatik University oftubingen D-72076 Tubingen Abstract. We illustrate how to combine CORBA as
More informationpresentation DAD Distributed Applications Development Cristian Toma
Lecture 9 S4 - Core Distributed Middleware Programming in JEE presentation DAD Distributed Applications Development Cristian Toma D.I.C.E/D.E.I.C Department of Economic Informatics & Cybernetics www.dice.ase.ro
More informationCORBA. CORBA Background. (Common Object Request Broker Architecture)
CORBA (Common Object Request Broker Architecture) CORBA Background CORBA is an architectural framework for distributed object management. Intended to support distributed client-server applications. Developed
More informationDistributed Event Programming
Chapter 6 Distributed Event Programming 6.1 Introduction Distributed computing involves multiple computers working together to accomplish some task. The computers communicate with each other by sending
More informationCORBA (Common Object Request Broker Architecture)
CORBA (Common Object Request Broker Architecture) René de Vries (rgv@cs.ru.nl) Based on slides by M.L. Liu 1 Overview Introduction / context Genealogical of CORBA CORBA architecture Implementations Corba
More informationJava and Distributed Systems
Java and Distributed Systems Dr. Stephan Fischer GMD-IPSI Dolivostr. 15 D-64293 Darmstadt sfischer@darmstadt.gmd.de Contents Remote Method Invocation Java and CORBA Jini Discussion Java RMI (1) RMI applications:
More informationRPC flow. 4.3 Remote procedure calls IDL. RPC components. Procedure. Program. sum (j,k) int j,k; {return j+k;} i = sum (3,7); Local procedure call
4.3 Remote procedure calls RPC flow Client process Server process Program i = sum (3,7); Procedure sum (j,k) int j,k; {return j+k; Client stub Program Return Call Unpack Pack result para s Invisible to
More informationSystemy Rozproszone CORBA I 1. CORBA part 1/2. Marcin Jarząb Paweł Słowikowski Paweł Rzepa. DSRG
Systemy Rozproszone CORBA I 1 CORBA part 1/2 Marcin Jarząb Paweł Słowikowski Paweł Rzepa Systemy Rozproszone CORBA I 2 Agenda Describe the CORBA technology Explain how to use the Java Interface Definition
More informationAvailable online at ScienceDirect. IERI Procedia 7 (2014 ) Engineering. Objects. Distributed
Available online at www.sciencedirect.com ScienceDirect IERI Procedia 7 (2014 ) 71 76 2013 International Conference on Applied Computing, Computer Science, and Computer Engineering Analytical comparison
More informationSafe Aspect Composition. When dierent aspects [4] are composed, one must ensure that the resulting
Safe Composition Laurent Bussard 1, Lee Carver 2, Erik Ernst 3, Matthias Jung 4, Martin Robillard 5, and Andreas Speck 6 1 I3S { CNRS UPRESA 6070 { B^at ESSI, 06190 Sophia-Antipolis, France, bussard@essi.fr
More informationDistributed Environments. CORBA, JavaRMI and DCOM
Distributed Environments CORBA, JavaRMI and DCOM Introduction to CORBA Distributed objects A mechanism allowing programs to invoke methods on remote objects Common Object Request Broker middleware - works
More informationLecture 5: Object Interaction: RMI and RPC
06-06798 Distributed Systems Lecture 5: Object Interaction: RMI and RPC Distributed Systems 1 Recap Message passing: send, receive synchronous versus asynchronous No global Time types of failure socket
More informationDistributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan.
Distributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan Reading List Remote Object Invocation -- Tanenbaum Chapter 2.3 CORBA
More informationIBD Intergiciels et Bases de Données
IBD Intergiciels et Bases de Données RMI-based distributed systems Fabien Gaud, Fabien.Gaud@inrialpes.fr Overview of lectures and practical work Lectures Introduction to distributed systems and middleware
More informationMigrating IONA Orbix 3 Applications
Migrating IONA Orbix 3 Applications Contrasting the migration path of Orbix 3 applications to Orbix 2000 and to Borland Enterprise Server, VisiBroker Edition by Will Edwards, Senior Consultant, The New
More informationToday: Distributed Objects. Distributed Objects
Today: Distributed Objects Case study: EJBs (Enterprise Java Beans) Case study: CORBA Lecture 23, page 1 Distributed Objects Figure 10-1. Common organization of a remote object with client-side proxy.
More informationRMI VERSUS CORBA: A MESSAGE TRANSFER SPEED COMPARISON
STUDIA UNIV. BABEŞ BOLYAI, INFORMATICA, Volume XLIX, Number 1, 2004 RMI VERSUS CORBA: A MESSAGE TRANSFER SPEED COMPARISON FLORIAN MIRCEA BOIAN AND RAREŞ FLORIN BOIAN Abstract. RMI (Remote Method Invocation)
More informationChapter 18: CORBA and Jini. Contents
of 23 27/04/2013 6:07 PM 18.1. CORBA Chapter 18: CORBA and Jini CORBA CORBA to Java Mapping Jini Proxies Simple Example Corba Server in Java Corba Client in Java Jini Service Jini Server and Client Building
More informationWhat is CORBA? CORBA (Common Object Request Broker Architecture) is a distributed object-oriented client/server platform.
CORBA What is CORBA? CORBA (Common Object Request Broker Architecture) is a distributed object-oriented client/server platform. It includes: an object-oriented Remote Procedure Call (RPC) mechanism object
More informationArchitecture of the CORBA Component Model. Object Services: Naming Service
Architecture of the CORBA Component Model Object Services: Naming Service What Are Object Services Infra structure services, independent from specific application Defined in IDL Can be implemented independent
More informationDistributed Objects. Object-Oriented Application Development
Distributed s -Oriented Application Development Procedural (non-object oriented) development Data: variables Behavior: procedures, subroutines, functions Languages: C, COBOL, Pascal Structured Programming
More informationContents. Java RMI. Java RMI. Java RMI system elements. Example application processes/machines Client machine Process/Application A
Contents Java RMI G53ACC Chris Greenhalgh Java RMI overview A Java RMI example Overview Walk-through Implementation notes Argument passing File requirements RPC issues and RMI Other problems with RMI 1
More informationReusability of Concerns
Reusability of Concerns Andreas Speck 1 Elke Pulvermüller 1 Mira Mezini 2 1 Wilhelm-Schickard-Institute for Computer Science University of Tübingen 72076 Tübingen, Germany fspeckjpulvermug@informatik.uni-tuebingen.de
More informationStrategies for integrating OSS/J systems with CORBA
Strategies for integrating OSS/J systems with CORBA A Borland White Paper By Brenton Camac, Ke Jin, and Dave Stringer March 2004 Contents Executive summary... 1 Introduction... 1 Invoking CORBA objects
More informationThe University of Western Australia Department of Electrical & Electronic Engineering Real-Time Distributed Systems 408 Laboratory
The University of Western Australia Department of Electrical & Electronic Engineering Real-Time Distributed Systems 408 Laboratory - 2002 Introduction to CORBA and Project Introduction PART 1: INTRODUCTION
More informationJAVA RMI. Remote Method Invocation
1 JAVA RMI Remote Method Invocation 2 Overview Java RMI is a mechanism that allows one to invoke a method on an object that exists in another address space. The other address space could be: On the same
More informationAssignment 1. Due date February 6, 2007 at 11pm. It must be submitted using submit command.
Assignment 1 Due date February 6, 2007 at 11pm. It must be submitted using submit command. Note: submit 4213 a1 . Read the manpages ("man submit") for more details on the submit command. It is
More informationObject Interaction. Object Interaction. Introduction. Object Interaction vs. RPCs (2)
Introduction Objective To support interoperability and portability of distributed OO applications by provision of enabling technology Object interaction vs RPC Java Remote Method Invocation (RMI) RMI Registry
More information5.4. Events and notifications
5.4. Events and notifications Distributed event-based systems extend local event model Allowing multiple objects at diff. locations to be notified of events taking place at an object Two characteristics:
More informationCS193k, Stanford Handout #12. Threads 4 / RMI
CS193k, Stanford Handout #12 Spring, 99-00 Nick Parlante Threads 4 / RMI Semaphore1 Semaphore1 from last time uses the count in a precise way to know exactly how many threads are waiting. In this way,
More informationAgent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Distributed and Agent Systems
Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Distributed and Agent Systems Prof. Agostino Poggi What is CORBA? CORBA (Common Object Request
More informationAdding Existing Source Code in NetBeans CS288, Autumn 2005 Lab 002
Adding Existing Source Code in NetBeans CS288, Autumn 2005 Lab 002 Purpose This document will show how to incorporate existing source code within a NetBeans project. It will also introduce the concept
More informationUNIT 4 CORBA 4/2/2013 Middleware 59
UNIT 4 CORBA 4/2/2013 Middleware 59 CORBA AN OBJECT ORIENTED RPC MECHANISM HELPS TO DEVELOP DISTRIBUTED SYTEMS IN DIFF. PLATFORMS OBJECTS WRITTEN IN DIFF., LANG, CAN BE CALLED BY OBJECTS WRITTEN IN ANOTHER
More informationActivation of remote objects
Activation of remote objects The Activatable class Prior to the release of Java 2 SDK, an instance of a UnicastRemoteObject could be accessed from a server program that created an instance of the remote
More informationpresentation DAD Distributed Applications Development Cristian Toma
Lecture 8 S4 - Core Distributed Middleware Programming in JEE presentation DAD Distributed Applications Development Cristian Toma D.I.C.E/D.E.I.C Department of Economic Informatics & Cybernetics www.dice.ase.ro
More informationLecture 5: RMI etc. Servant. Java Remote Method Invocation Invocation Semantics Distributed Events CDK: Chapter 5 TVS: Section 8.3
Lecture 5: RMI etc. Java Remote Method Invocation Invocation Semantics Distributed Events CDK: Chapter 5 TVS: Section 8.3 CDK Figure 5.7 The role of proxy and skeleton in remote method invocation client
More information03 Remote invocation. Request-reply RPC. Coulouris 5 Birrel_Nelson_84.pdf RMI
03 Remote invocation Request-reply RPC Coulouris 5 Birrel_Nelson_84.pdf RMI 2/16 Remote Procedure Call Implementation client process Request server process client program client stub procedure Communication
More informationVerteilte Systeme (Distributed Systems)
Verteilte Systeme (Distributed Systems) Karl M. Göschka Karl.Goeschka@tuwien.ac.at http://www.infosys.tuwien.ac.at/teaching/courses/ VerteilteSysteme/ Lecture 3: Communication (Part 2) Remote Procedure
More informationRPC and RMI. 2501ICT Nathan
RPC and RMI 2501ICT Nathan Contents Client/Server revisited RPC Architecture XDR RMI Principles and Operation Case Studies Copyright 2002- René Hexel. 2 Client/Server Revisited Server Accepts commands
More informationIntroduction to Distributed Object Technologies: CORBA, RMI &.NET Introduction to the Design Project
The University of Western Australia School of Electrical, Electronic & Computer Engineering Real-time Distributed Computer Systems 423 Laboratory - 2003 Introduction to Distributed Object Technologies:
More informationRMI: Design & Implementation
RMI: Design & Implementation Operating Systems RMI 1 Middleware layers Applications, services RMI and RPC request-reply protocol marshalling and external data representation Middleware layers UDP and TCP
More informationRemote Objects and RMI
Outline Remote Objects and RMI Instructor: Dr. Tongping Liu Distributed/Remote Objects Remote object reference (ROR) Remote Method Invocation (RMI) Case study and example: Java RMI Other issues for objects
More informationActivation of remote objects
Activation of remote objects The Activatable class Prior to the release of Java 2 SDK, an instance of a UnicastRemoteObject could be accessed from a server program that created an instance of the remote
More informationDistributed Systems Lecture 2 1. External Data Representation and Marshalling (Sec. 4.3) Request reply protocol (failure modes) (Sec. 4.
Distributed Systems Lecture 2 1 Today s Topics External Data Representation and Marshalling (Sec. 4.3) Request reply protocol (failure modes) (Sec. 4.4) Distributed Objects and Remote Invocations (5.1)
More informationPART VII Building Web Services With JAX-RPC. 7.5 JAX Web Service Architecture. Development of a Web Service with JAX. Runtime View of a Web Service
PART VII Building Web Services With JAX-RPC 7.5 JAX Web Service Architecture 5. Overview of the JAX-RPC Web Service Architecture 6. Building and Deploying a JAX-RPC Web Service 7. Building and Running
More informationLab 1 : Java Sockets
Lab 1 : Java Sockets 1. Goals In this lab you will work with a low-level mechanism for distributed communication. You will discover that Java sockets do not provide: - location transparency - naming transparency
More informationAchieving Architectural Design Concepts with Remote Method Invocations
Achieving Architectural Design Concepts with Remote Method Invocations L.ilteri ÖNEY E1305937 Computer Engineering Department - METU Dr.Semih ÇETN ABSTRACT Motivation to write this article is based on
More informationDo this by creating on the m: drive (Accessed via start menu link Computer [The m: drive has your login id as name]) the subdirectory CI101.
Creating and running a Java program. This tutorial is an introduction to running a computer program written in the computer programming language Java using the BlueJ IDE (Integrated Development Environment).
More informationOutline. EEC-681/781 Distributed Computing Systems. The OSI Network Architecture. Inter-Process Communications (IPC) Lecture 4
EEC-681/781 Distributed Computing Systems Lecture 4 Department of Electrical and Computer Engineering Cleveland State University wenbing@ieee.org Outline Inter-process communications Computer networks
More informationibaan OpenWorld Adapter Suite 2.3 Installation and Configuration Guide for Connector for CORBA
ibaan OpenWorld Adapter Suite 2.3 Installation and Configuration Guide for Connector for CORBA A publication of: Baan Development B.V. P.O.Box 143 3770 AC Barneveld The Netherlands Printed in the Netherlands
More informationDesarrollo de Aplicaciones en Red. El modelo de comunicación. General concepts. Models of communication. Message Passing
Desarrollo de Aplicaciones en Red El modelo de comunicación José Rafael Rojano Cáceres http://www.uv.mx/rrojano 1 2 General concepts As we saw in a Distributed System the logical and physical component
More informationGeneric architecture
Java-RMI Lab Outline Let first builds a simple home-made framework This is useful to understand the main issues We see later how java-rmi works and how it solves the same issues Generic architecture object
More informationA Report on RMI and RPC Submitted by Sudharshan Reddy B
A Report on RMI and RPC Submitted by Sudharshan Reddy B Abstract: This report mainly explains the RMI and RPC technologies. In the first part of the paper the RMI technology is briefly explained and in
More informationOutline. Chapter 4 Remote Procedure Calls and Distributed Transactions. Remote Procedure Call. Distributed Transaction Processing.
Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 4 Remote Procedure Calls and Distributed Transactions Outline
More informationChapter 4 Remote Procedure Calls and Distributed Transactions
Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 4 Remote Procedure Calls and Distributed Transactions Outline
More informationCS 5523 Operating Systems: Remote Objects and RMI
CS 5523 Operating Systems: Remote Objects and RMI Instructor: Dr. Tongping Liu Thank Dr. Dakai Zhu and Dr. Palden Lama for providing their slides. Outline Distributed/Remote Objects Remote object reference
More informationDistributed Computing
Distributed Computing Computing on many systems to solve one problem Why? - Combination of cheap processors often more cost-effective than one expensive fast system - Flexibility to add according to needs
More informationHistory of Enterprise Java
History of Enterprise Java! At first: Sun focused on the Java Development Kit (JDK) " Remember that Java is a spec, not a technology " Different vendors can implement Java " The JDK became the de-facto
More informationCommunication and Distributed Processing
Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 4 Remote Procedure Calls and Distributed Transactions Outline
More informationObject Management Group. minimumcorba. Presented By Shahzad Aslam-Mir Vertel Corporation Copyright 2001 Object Management Group
Presented By Shahzad Aslam-Mir Vertel Corporation Copyright 2001 Philosophy A standard profile for limited resource systems Simpler means smaller and faster Vendors can profile implementations
More informationRemote Method Invocation
Non-101samples available here: https://github.com/101companies/101repo/tree/master/languages/aspectj/javarmisamples Remote Method Invocation Prof. Dr. Ralf Lämmel Universität Koblenz-Landau Software Languages
More informationAdvanced Topics in Operating Systems
Advanced Topics in Operating Systems MSc in Computer Science UNYT-UoG Dr. Marenglen Biba 8-9-10 January 2010 Lesson 10 01: Introduction 02: Architectures 03: Processes 04: Communication 05: Naming 06:
More informationNetwork. Dr. Jens Bennedsen, Aarhus University, School of Engineering Aarhus, Denmark
Network Dr. Jens Bennedsen, Aarhus University, School of Engineering Aarhus, Denmark jbb@ase.au.dk Outline Socket programming If we have the time: Remote method invocation (RMI) 2 Socket Programming Sockets
More informationJAC444 - Lecture 11. Remote Method Invocation Segment 2 - Develop RMI Application. Jordan Anastasiade Java Programming Language Course
JAC444 - Lecture 11 Remote Method Invocation Segment 2 - Develop RMI Application 1 Remote Method Invocation In this lesson you will be learning about: Designing RMI application Developing distributed object
More informationLecture 06: Distributed Object
Lecture 06: Distributed Object Distributed Systems Behzad Bordbar School of Computer Science, University of Birmingham, UK Lecture 0? 1 Recap Interprocess communication Synchronous and Asynchronous communication
More informationChapter 15: Distributed Communication. Sockets Remote Procedure Calls (RPCs) Remote Method Invocation (RMI) CORBA Object Registration
Chapter 15: Distributed Communication Sockets Remote Procedure Calls (RPCs) Remote Method Invocation (RMI) CORBA Object Registration Sockets Defined as an endpoint for communcation Concatenation of IP
More informationBorland VisiBroker 8.0
Borland VisiBroker 8.0 VisiBroker for Java Developer s Guide Borland Software Corporation 20450 Stevens Creek Blvd., Suite 800 Cupertino, CA 95014 USA www.borland.com Refer to the file deploy.html for
More informationCommunication and Distributed Processing
Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 4 Remote Procedure Calls and Distributed Transactions Outline
More informationBEAWebLogic Server and WebLogic Express. Programming WebLogic JNDI
BEAWebLogic Server and WebLogic Express Programming WebLogic JNDI Version 10.0 Document Revised: March 30, 2007 Contents 1. Introduction and Roadmap Document Scope and Audience.............................................
More informationChapter 4 Defining Classes I
Chapter 4 Defining Classes I This chapter introduces the idea that students can create their own classes and therefore their own objects. Introduced is the idea of methods and instance variables as the
More informationOrbix OrbixNames Programmer s and Administrator s Guide
Orbix 3.3.13 OrbixNames Programmer s and Administrator s Guide Micro Focus The Lawn 22-30 Old Bath Road Newbury, Berkshire RG14 1QN UK http://www.microfocus.com Copyright Micro Focus 2015. All rights reserved.
More information#,!" $* ( #+,$ $$ $# -.,$ / 0' ".12 $ $$ 5/ #$" " " $ $ " # $ / 4 * # 6/ 8$8 ' # 6 $! 6$$ #$ * $ $$ ** 4 # 6 # * 0; & *! # #! #(' 7 / $#$ -.
! " $ %&(& $ $ $* ( +,$ $$ $ -.,$ / 0 ".12 ) ($$ ( 4, /!" ($$ ( 4, / 4 0 ($ $ $ $ $$ 5/ $" " " $ $ " $ / 4 * %!&& $ $$ ** 4 6 7$ 4 0 %!&& $ 88 $ 6 67 $ / ** 7$ 4.12 )*&$& 6/ 8$8 6 $! 6$$ $ * 67$ : $* $
More informationDistributed Systems. 5. Remote Method Invocation
Distributed Systems 5. Remote Method Invocation Werner Nutt 1 Remote Method Invocation 5.1 Communication between Distributed Objects 1. Communication between Distributed Objects 2. RMI 2 Middleware Middleware
More informationKINGS COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING ACADEMIC YEAR (ODD SEMESTER) QUESTION BANK
KINGS COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING ACADEMIC YEAR 2011 2012(ODD SEMESTER) QUESTION BANK SUBJECT CODE / NAME: IT1402-MIDDLEWARE TECHNOLOGIES YEAR/SEM : IV / VII UNIT
More informationRMI. Remote Method Invocation. 16-Dec-16
RMI Remote Method Invocation 16-Dec-16 The network is the computer Consider the following program organization: method SomeClass call AnotherClass returned object computer 1 computer 2 If the network is
More informationPROFESSOR: DR.JALILI BY: MAHDI ESHAGHI
PROFESSOR: DR.JALILI BY: MAHDI ESHAGHI 1 2 Overview Distributed OZ Java RMI CORBA IDL IDL VS C++ CORBA VS RMI 3 Distributed OZ Oz Language Multi paradigm language, strong support for compositionality and
More informationRemote Method Invocation
Remote Method Invocation A true distributed computing application interface for Java, written to provide easy access to objects existing on remote virtual machines Provide access to objects existing on
More informationDistributed Programming with RMI. Overview CORBA DCOM. Prepared By: Shiba R. Tamrakar
Distributed Programming with RMI Overview Distributed object computing extends an object-oriented programming system by allowing objects to be distributed across a heterogeneous network, so that each of
More informationRemote Method Invocation
Remote Method Invocation RMI Dr. Syed Imtiyaz Hassan Assistant Professor, Deptt. of CSE, Jamia Hamdard (Deemed to be University), New Delhi, India. s.imtiyaz@jamiahamdard.ac.in 1 Agenda Introduction Creating
More informationDistributed Object-based Systems CORBA
CprE 450/550x Distributed Systems and Middleware Distributed Object-based Systems CORBA Yong Guan 3216 Coover Tel: (515) 294-8378 Email: guan@ee.iastate.edu March 30, 2004 2 Readings for Today s Lecture!
More informationThe UNIVERSITY of EDINBURGH. SCHOOL of INFORMATICS. CS4/MSc. Distributed Systems. Björn Franke. Room 2414
The UNIVERSITY of EDINBURGH SCHOOL of INFORMATICS CS4/MSc Distributed Systems Björn Franke bfranke@inf.ed.ac.uk Room 2414 (Lecture 3: Remote Invocation and Distributed Objects, 28th September 2006) 1 Programming
More information