VisitCountServerInterface.java
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface VisitCountServerInterface extends Remote{
public Integer visitCount() throws RemoteException;
}
VisitCountServerInterfaceImpl.java
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
public class VisitCountServerInterfaceImpl extends UnicastRemoteObject implements VisitCountServerInterface{
public static int visitCount = 0;
public VisitCountServerInterfaceImpl() throws RemoteException{
}
public Integer visitCount() throws RemoteException{
visitCount++;
return(new Integer(visitCount));
}
}
RegisterWithRMIServer.java
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
public class RegisterWithRMIServer{
public static void main(String args[]){
try{
VisitCountServerInterface visitCounter = new VisitCountServerInterfaceImpl();
Registry registry = LocateRegistry.getRegistry();
registry.rebind("VisitCountServerInterfaceImpl",visitCounter);
System.out.println("Object "+visitCounter+" registered");
}catch(Exception ex){
}
}
}
VisitCountServerInterfaceClient.java
import javax.swing.JApplet;
import javax.swing.JLabel;
import javax.swing.JFrame;
import java.awt.BorderLayout;
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
public class VisitCountServerInterfaceClient extends JApplet{
VisitCountServerInterface visitCounter;
int visitCount;
public void init(){
initializeRMI();
add(new JLabel("The Visit Count is :"+(new Integer(visitCount)).toString()));
}
public void initializeRMI(){
try{
Registry registry = LocateRegistry.getRegistry("localhost");
visitCounter = (VisitCountServerInterface)registry.lookup("VisitCountServerInterfaceImpl");
visitCount = visitCounter.visitCount();
}catch(Exception ex){
}
}
public static void main(String []args){
VisitCountServerInterfaceClient applet = new VisitCountServerInterfaceClient();
JFrame frame = new JFrame("VisitCountServerInterfaceClient");
frame.add(applet,BorderLayout.CENTER);
frame.setSize(300,300);
applet.init();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
frame.setDefaultCloseOperation(3);
}
}
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface VisitCountServerInterface extends Remote{
public Integer visitCount() throws RemoteException;
}
VisitCountServerInterfaceImpl.java
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
public class VisitCountServerInterfaceImpl extends UnicastRemoteObject implements VisitCountServerInterface{
public static int visitCount = 0;
public VisitCountServerInterfaceImpl() throws RemoteException{
}
public Integer visitCount() throws RemoteException{
visitCount++;
return(new Integer(visitCount));
}
}
RegisterWithRMIServer.java
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
public class RegisterWithRMIServer{
public static void main(String args[]){
try{
VisitCountServerInterface visitCounter = new VisitCountServerInterfaceImpl();
Registry registry = LocateRegistry.getRegistry();
registry.rebind("VisitCountServerInterfaceImpl",visitCounter);
System.out.println("Object "+visitCounter+" registered");
}catch(Exception ex){
}
}
}
VisitCountServerInterfaceClient.java
import javax.swing.JApplet;
import javax.swing.JLabel;
import javax.swing.JFrame;
import java.awt.BorderLayout;
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
public class VisitCountServerInterfaceClient extends JApplet{
VisitCountServerInterface visitCounter;
int visitCount;
public void init(){
initializeRMI();
add(new JLabel("The Visit Count is :"+(new Integer(visitCount)).toString()));
}
public void initializeRMI(){
try{
Registry registry = LocateRegistry.getRegistry("localhost");
visitCounter = (VisitCountServerInterface)registry.lookup("VisitCountServerInterfaceImpl");
visitCount = visitCounter.visitCount();
}catch(Exception ex){
}
}
public static void main(String []args){
VisitCountServerInterfaceClient applet = new VisitCountServerInterfaceClient();
JFrame frame = new JFrame("VisitCountServerInterfaceClient");
frame.add(applet,BorderLayout.CENTER);
frame.setSize(300,300);
applet.init();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
frame.setDefaultCloseOperation(3);
}
}
No comments:
Post a Comment