//Server.java
import java.rmi.*;
import java.rmi.server.*;
public class server extends UnicastRemoteObject implements factorial
{
public server() throws RemoteException
{
}
public static void main(String args[])throws Exception
{
System.out.println("Server starts");
server s=new server();
Naming.rebind("Server",s);
}
public int factorial(int x)
{
int f=1;
if(x==0||x==1)
{
System.out.println("Factorial"+1);
}
else
{
while(x>0)
{
f=f*x;
x--;
}
}
return f;
}
}
//client.java
import java.io.*;
import java.net.*;
import java.rmi.*;
public class client
{
public static void main(String args[])
{
try
{
String URL="rmi://"+args[0]+"/Server";
factorial f=(factorial)Naming.lookup(URL);
System.out.println("Enter the number:"+args[1]);
int a=Integer.parseInt(args[1]);
System.out.println("The factorial is"+f.factorial(a));
}
catch(Exception e)
{
System.out.println("Exception"+e);
}
}
}
public interface factorial extends Remote
{
int factorial(int x)throws RemoteException;
}
import java.rmi.*;
import java.rmi.server.*;
public class server extends UnicastRemoteObject implements factorial
{
public server() throws RemoteException
{
}
public static void main(String args[])throws Exception
{
System.out.println("Server starts");
server s=new server();
Naming.rebind("Server",s);
}
public int factorial(int x)
{
int f=1;
if(x==0||x==1)
{
System.out.println("Factorial"+1);
}
else
{
while(x>0)
{
f=f*x;
x--;
}
}
return f;
}
}
//client.java
import java.io.*;
import java.net.*;
import java.rmi.*;
public class client
{
public static void main(String args[])
{
try
{
String URL="rmi://"+args[0]+"/Server";
factorial f=(factorial)Naming.lookup(URL);
System.out.println("Enter the number:"+args[1]);
int a=Integer.parseInt(args[1]);
System.out.println("The factorial is"+f.factorial(a));
}
catch(Exception e)
{
System.out.println("Exception"+e);
}
}
}
//factorial.java
import java.rmi.*;public interface factorial extends Remote
{
int factorial(int x)throws RemoteException;
}
Can you please explain how to run this program ??
ReplyDeleteWhat should be the command line arguments ???