You are on page 1of 2

TimeatServer.

java
import java.rmi.*;
public interface TimeatServer extends Remote
{
public String showTime() throws RemoteException;
}

TimeServerImpl.java

import java.rmi.*;
import java.rmi.server.*;
import java.util.Calendar;
import java.util.GregorianCalendar;
public class TimeServerImpl extends UnicastRemoteObject implements
TimeatServer{
public TimeServerImpl() throws Exception { }
public String showTime() throws RemoteException {
Calendar calendar = new GregorianCalendar();
String am_pm;
int hour = calendar.get(Calendar.HOUR);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
if(calendar.get(Calendar.AM_PM) == 0)
am_pm = "AM";
else
am_pm = "PM";
return "Current Time : " + hour + ":"
+ minute + ":" + second + " " + am_pm;
}
}

BindServer.java

import java.rmi.*;
import java.rmi.server.*;
import java.util.logging.Level;
import java.util.logging.Logger;
public class BindServer {
public static void main(String[] args) {
try {
TimeServerImpl tsi= new TimeServerImpl();
Naming.bind("time", tsi);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
Client.java

import java.net.MalformedURLException;
import java.rmi.Naming;
import java.rmi.NotBoundException;
import java.rmi.RemoteException;
import java.util.logging.Level;
import java.util.logging.Logger;
public class Client {
public static void main(String[] args) throws NotBoundException {
try {
String url="rmi://127.0.0.1/time";
TimeatServer ts=(TimeatServer) Naming.lookup(url);
System.out.println(""+ts.showTime());
} catch (MalformedURLException ex) {
Logger.getLogger(Client.class.getName()).log(Level.SEVERE, null, ex);
} catch (RemoteException ex) {
Logger.getLogger(Client.class.getName()).log(Level.SEVERE, null, ex);
}
}
}

OUTPUT:

Server Side
H:\dos\lab5>javac TimeatServer.java
H:\dos\lab5>javac TimeServerImpl.java
H:\dos\lab5>javac BindServer.java
H:\dos\lab5>javac Client.java
H:\dos\lab5>rmic TimeServerImpl
H:\dos\lab5>start rmiregistry
H:\dos\lab5>java BindServer

client side
H:\dos\lab5>java Client
Current Time 12.11.34AM

You might also like