You are on page 1of 2

REMOTE METHOD INVOCATION-SIMPLE PROGRAM

//INTERFACE-subs.java
import java.rmi.*;
public interface subs extends Remote
{
int sub(int i1,int i2)throws RemoteException;
}
//IMPLEMENTATION-subs1.java
import java.rmi.*;
import java.rmi.server.*;
import java.io.*;
public class subs1 extends UnicastRemoteObject implements subs,Serializa
ble
{
public subs1()throws RemoteException{}
public int sub(int i1,int i2) throws RemoteException
{
return i1-i2;
}
}
//CLIENT-subsclient.java
import java.io.*;
import java.rmi.*;
public class subclient
{
public static void main(String a[])
{
try
{
String subserverurl="rmi://"+a[0]+"/subserver";
subs subss=(subs)Naming.lookup(subserverurl);
System.out.println("The first no is:"+a[1]);
System.out.println("The second no is:"+a[2]);
int i1=Integer.parseInt(a[1]);
int i2=Integer.parseInt(a[2]);
System.out.println("The diff is:"+subss.sub(i1,i2));
}
catch(Exception e)
{}
}
}
// SERVER-subserver.java
import java.net.*;
import java.rmi.*;
public class subserver
{
public static void main(String a[])
{
try
{
subs1 subobj=new subs1();
Naming.rebind("subserver",subobj);
}
catch(Exception e)
{}
}
}
//OUTPUT:
Z:\programs>javac subs.java
Z:\programs>javac subs1.java
Z:\programs>javac subserver.java
Z:\programs>javac subclient.java
Z:\programs>rmic subs1
Z:\programs>start rmiregistry
Z:\programs>java subserver
Z:\programs>java subclient localhost 5 2
The first no is :5
The second no is :2
The difference is : 3

You might also like