----------------------
public interface myRmiInterface extends java.rmi.Remote
{
public java.util.Date getdate() throws java.rmi.RemoteException;
}
RMI Implementation
------------------------
import java.rmi.*;
import java.rmi.server.*;
import java.io.*;
public class myRmiImpl extends UnicastRemoteObject implements myRmiInterface
{
public myRmiImpl(String name) throws RemoteException
{
super();
try
{
Naming.rebind(name,this);
}
catch(Exception e)
{
System.out.println("Error "+e);
}
}
public java.util.Date getdate()
{
return new java.util.Date();
}
}
RMI Client
---------------
import java.io.*;
import java.util.Date;
import java.lang.*;
import java.rmi.*;
import java.rmi.server.*;
import java.rmi.registry.*;
public class myRmiClient
{
public static void main(String[] argv)
{
System.setSecurityManager(new RMISecurityManager());
if(argv.length!=1)
{
System.out.println("Require IP Address of Server");
System.exit(0);
}
String servername = argv[0];
try
{
myRmiInterface interef = (myRmiInterface)
Naming.lookup("rmi://"+servername+"/myRmiImplInstance");
Date d=interef.getdate();
System.out.println("Server System date : "+d);
}
catch(Exception e)
{
System.out.println("Error "+e);
}
}
}
RMI Server
---------------
import java.io.*;
import java.rmi.*;
import java.rmi.server.*;
public class myRmiServer
{
public static void main(String []argv)
{
System.setSecurityManager(new RMISecurityManager());
try
{
System.out.println("Server Waiting for client");
myRmiImpl impl = new myRmiImpl("myRmiImplInstance");
}
catch(Exception e)
{
System.out.println("Error "+e);
}
}
}