SlideShare una empresa de Scribd logo
1 de 67
Remote Method Invocation
Introduction
What is Remote Method Invocation? ,[object Object],[object Object],[object Object]
Why RMI? ,[object Object],[object Object],[object Object],[object Object]
Why RMI? ,[object Object],[object Object],[object Object],[object Object],[object Object]
Why RMI? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Why RMI? ,[object Object],[object Object]
Why RMI? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Stubs & Skeletons ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Stubs & Skeletons
The java.rmi.Remote interface ,[object Object],[object Object],[object Object],[object Object],[object Object]
Using the java.rmi.Remote interface
Using the RMI interface ,[object Object],[object Object],[object Object],[object Object],[object Object]
1. Extend RMI ,[object Object],[object Object]
2.  Declare methods that need to be accessed remotely ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
3.  Define a class that implements this interface. ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
RMI Class Hierarchy
A Sample Case Mortgage Computation via RMI
A Scenario ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The calculatePayment() Method ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The calculatePayment() Method ,[object Object],[object Object],[object Object],[object Object],[object Object]
Designing a Remote Interface ,[object Object],[object Object],[object Object],[object Object],[object Object]
What is a remote interface? ,[object Object],[object Object]
What is a remote method? ,[object Object],[object Object],[object Object]
What is a remote method? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
More on remote methods ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
More on remote methods ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Design a Remote Object ,[object Object]
Design a Remote Object ,[object Object],[object Object],[object Object]
Design a Remote Object ,[object Object],[object Object],[object Object]
The Remote Object ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
More on Remote Objects ,[object Object],[object Object],[object Object]
More on Remote Objects ,[object Object],[object Object],[object Object],[object Object]
Design an RMI Server ,[object Object],[object Object]
What is an RMI Server? ,[object Object]
What is an RMI Server? ,[object Object],[object Object],[object Object],[object Object],[object Object]
How to create an instance of the remote object ,[object Object],[object Object],[object Object],[object Object]
How to export the remote object? ,[object Object],[object Object],[object Object]
How to export the remote object? ,[object Object],[object Object],[object Object],[object Object],[object Object]
How to export the remote object? ,[object Object],[object Object],[object Object],[object Object]
An alternative way to export remote object ,[object Object]
An alternative way to export remote object ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
What is Java RMI registry ,[object Object],[object Object],[object Object]
What is Java RMI registry ,[object Object],[object Object],[object Object],[object Object]
The Server Class ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Design an RMI Client ,[object Object],[object Object]
What is an RMI Client? ,[object Object]
What is an RMI Client? ,[object Object],[object Object],[object Object]
What is an RMI Client? ,[object Object],[object Object],[object Object]
How to locate a host? ,[object Object],[object Object],[object Object]
How to look up a remote object? ,[object Object],[object Object],[object Object],[object Object],[object Object]
How to look up a remote object? ,[object Object],[object Object],[object Object]
The Client Class ,[object Object],[object Object],[object Object]
Running the files ,[object Object],[object Object],[object Object],[object Object],[object Object]
Running the files ,[object Object],[object Object],[object Object],[object Object]
Running the files ,[object Object],[object Object],[object Object],[object Object],[object Object]
Running the files ,[object Object],[object Object],[object Object],[object Object],[object Object]
Running the files ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Running the Server ,[object Object],[object Object],[object Object],[object Object],[object Object]
Running the Server ,[object Object],[object Object],[object Object],[object Object]
Running the Client ,[object Object],[object Object],[object Object]
Running the Client ,[object Object],[object Object],[object Object]
Running Everything ,[object Object],[object Object],[object Object],[object Object],[object Object]
Running Everything ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Running Everything ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Recap
Process of designing an RMI server and client system  ,[object Object],[object Object],[object Object],[object Object]

Más contenido relacionado

La actualidad más candente

Distributed objects & components of corba
Distributed objects & components of corbaDistributed objects & components of corba
Distributed objects & components of corba
Mayuresh Wadekar
 

La actualidad más candente (20)

Java Server Pages(jsp)
Java Server Pages(jsp)Java Server Pages(jsp)
Java Server Pages(jsp)
 
Anatomy of classic map reduce in hadoop
Anatomy of classic map reduce in hadoop Anatomy of classic map reduce in hadoop
Anatomy of classic map reduce in hadoop
 
Virtual Functions | Polymorphism | OOP
Virtual Functions | Polymorphism | OOPVirtual Functions | Polymorphism | OOP
Virtual Functions | Polymorphism | OOP
 
Remote Method Invocation (Java RMI)
Remote Method Invocation (Java RMI)Remote Method Invocation (Java RMI)
Remote Method Invocation (Java RMI)
 
Naming in Distributed System
Naming in Distributed SystemNaming in Distributed System
Naming in Distributed System
 
Javabeans .pdf
Javabeans .pdfJavabeans .pdf
Javabeans .pdf
 
Amoeba distributed operating System
Amoeba distributed operating SystemAmoeba distributed operating System
Amoeba distributed operating System
 
Java servlets and CGI
Java servlets and CGIJava servlets and CGI
Java servlets and CGI
 
Distributed System-Multicast & Indirect communication
Distributed System-Multicast & Indirect communicationDistributed System-Multicast & Indirect communication
Distributed System-Multicast & Indirect communication
 
Distributed objects & components of corba
Distributed objects & components of corbaDistributed objects & components of corba
Distributed objects & components of corba
 
Servlet and servlet life cycle
Servlet and servlet life cycleServlet and servlet life cycle
Servlet and servlet life cycle
 
Design of a two pass assembler
Design of a two pass assemblerDesign of a two pass assembler
Design of a two pass assembler
 
Unix File System
Unix File SystemUnix File System
Unix File System
 
Jsp ppt
Jsp pptJsp ppt
Jsp ppt
 
Distributed system architecture
Distributed system architectureDistributed system architecture
Distributed system architecture
 
Web services
Web servicesWeb services
Web services
 
Java rmi
Java rmiJava rmi
Java rmi
 
System models in distributed system
System models in distributed systemSystem models in distributed system
System models in distributed system
 
File allocation methods (1)
File allocation methods (1)File allocation methods (1)
File allocation methods (1)
 
Java beans
Java beansJava beans
Java beans
 

Destacado

Chapter 3 servlet & jsp
Chapter 3 servlet & jspChapter 3 servlet & jsp
Chapter 3 servlet & jsp
Jafar Nesargi
 

Destacado (8)

EJB Clients
EJB ClientsEJB Clients
EJB Clients
 
Ch 2 lattice & boolean algebra
Ch 2 lattice & boolean algebraCh 2 lattice & boolean algebra
Ch 2 lattice & boolean algebra
 
JMS - Java Messaging Service
JMS - Java Messaging ServiceJMS - Java Messaging Service
JMS - Java Messaging Service
 
Entity beans in java
Entity beans in javaEntity beans in java
Entity beans in java
 
Tutorial su JMS (Java Message Service)
Tutorial su JMS (Java Message Service)Tutorial su JMS (Java Message Service)
Tutorial su JMS (Java Message Service)
 
Java Mail
Java MailJava Mail
Java Mail
 
EJB .
EJB .EJB .
EJB .
 
Chapter 3 servlet & jsp
Chapter 3 servlet & jspChapter 3 servlet & jsp
Chapter 3 servlet & jsp
 

Similar a Remote Method Invocation

Distributed Programming using RMI
 Distributed Programming using RMI Distributed Programming using RMI
Distributed Programming using RMI
backdoor
 
Distributed Programming using RMI
Distributed Programming using RMIDistributed Programming using RMI
Distributed Programming using RMI
backdoor
 

Similar a Remote Method Invocation (20)

Oracle docs rmi applications
Oracle docs rmi applicationsOracle docs rmi applications
Oracle docs rmi applications
 
Remote method invocation
Remote method invocationRemote method invocation
Remote method invocation
 
Basic java
Basic java Basic java
Basic java
 
Remote method invocation
Remote method invocationRemote method invocation
Remote method invocation
 
Remote method invocation
Remote method invocationRemote method invocation
Remote method invocation
 
RMI (Remote Method Invocation)
RMI (Remote Method Invocation)RMI (Remote Method Invocation)
RMI (Remote Method Invocation)
 
Remote method invocatiom
Remote method invocatiomRemote method invocatiom
Remote method invocatiom
 
Report on mini project(Student database handling using RMI)
Report on mini project(Student database handling using RMI)Report on mini project(Student database handling using RMI)
Report on mini project(Student database handling using RMI)
 
Remote Method Invocation
Remote Method InvocationRemote Method Invocation
Remote Method Invocation
 
Java rmi tutorial
Java rmi tutorialJava rmi tutorial
Java rmi tutorial
 
Rmi
RmiRmi
Rmi
 
Rmi
RmiRmi
Rmi
 
Module 3 remote method invocation-2
Module 3   remote method  invocation-2Module 3   remote method  invocation-2
Module 3 remote method invocation-2
 
Rmi
RmiRmi
Rmi
 
Rmi ppt
Rmi pptRmi ppt
Rmi ppt
 
Distributed Programming using RMI
 Distributed Programming using RMI Distributed Programming using RMI
Distributed Programming using RMI
 
Distributed Programming using RMI
Distributed Programming using RMIDistributed Programming using RMI
Distributed Programming using RMI
 
ADB Lab Manual.docx
ADB Lab Manual.docxADB Lab Manual.docx
ADB Lab Manual.docx
 
Rmi
RmiRmi
Rmi
 
Java RMI
Java RMIJava RMI
Java RMI
 

Más de Paul Pajo

Practical Intro Merb
Practical Intro MerbPractical Intro Merb
Practical Intro Merb
Paul Pajo
 

Más de Paul Pajo (20)

Tech island2014
Tech island2014Tech island2014
Tech island2014
 
Hacker To Founder - Filipino Technical Co-Founders at Work
Hacker To Founder - Filipino Technical Co-Founders at WorkHacker To Founder - Filipino Technical Co-Founders at Work
Hacker To Founder - Filipino Technical Co-Founders at Work
 
Geeks On A Beach 2013: Mobile App Trends
Geeks On A Beach 2013: Mobile App TrendsGeeks On A Beach 2013: Mobile App Trends
Geeks On A Beach 2013: Mobile App Trends
 
Have Code, Will Compete
Have Code, Will CompeteHave Code, Will Compete
Have Code, Will Compete
 
My excel reviewer
My excel reviewer My excel reviewer
My excel reviewer
 
Using Twitter, Plurk, Etherpad, Pb Works
Using Twitter, Plurk, Etherpad, Pb WorksUsing Twitter, Plurk, Etherpad, Pb Works
Using Twitter, Plurk, Etherpad, Pb Works
 
Social Network-Driven Voter's Education
Social Network-Driven Voter's EducationSocial Network-Driven Voter's Education
Social Network-Driven Voter's Education
 
Presidentiable Leadeship Similiarity Survey
Presidentiable Leadeship Similiarity SurveyPresidentiable Leadeship Similiarity Survey
Presidentiable Leadeship Similiarity Survey
 
Principal Factors Analysis on IS Survey
Principal Factors Analysis on IS SurveyPrincipal Factors Analysis on IS Survey
Principal Factors Analysis on IS Survey
 
Principal Factors Analysis of IS Survey
Principal Factors Analysis of IS SurveyPrincipal Factors Analysis of IS Survey
Principal Factors Analysis of IS Survey
 
Cloud Computing Nist Paul Pajo
Cloud Computing Nist Paul PajoCloud Computing Nist Paul Pajo
Cloud Computing Nist Paul Pajo
 
I made something people want
I made something people wantI made something people want
I made something people want
 
ITETHIC Accomplisment Report 3 T 2008 2009
ITETHIC Accomplisment Report 3 T 2008 2009ITETHIC Accomplisment Report 3 T 2008 2009
ITETHIC Accomplisment Report 3 T 2008 2009
 
Will You Be The Next Social Entrepreneur Mar 27, 2009
Will You Be The Next Social Entrepreneur Mar 27, 2009Will You Be The Next Social Entrepreneur Mar 27, 2009
Will You Be The Next Social Entrepreneur Mar 27, 2009
 
Drip In Cultural Commons
Drip In Cultural CommonsDrip In Cultural Commons
Drip In Cultural Commons
 
Practical Intro Merb
Practical Intro MerbPractical Intro Merb
Practical Intro Merb
 
Practical Intro Merb
Practical Intro MerbPractical Intro Merb
Practical Intro Merb
 
Accomplishment Report Sysanal Itethic 1t20082009
Accomplishment Report Sysanal Itethic 1t20082009Accomplishment Report Sysanal Itethic 1t20082009
Accomplishment Report Sysanal Itethic 1t20082009
 
Jasig Rubyon Rails
Jasig Rubyon RailsJasig Rubyon Rails
Jasig Rubyon Rails
 
Ruby On Rails Presentation
Ruby On Rails PresentationRuby On Rails Presentation
Ruby On Rails Presentation
 

Último

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Remote Method Invocation