Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Write a Calculator using Java RMI. Write 4 files... The Calculator – an interfac

ID: 668798 • Letter: W

Question

Write a Calculator using Java RMI. Write 4 files...

The Calculator – an interface defines all of the calculating services supplied to the users, including addition, subtraction, multiplication, and division.

The CalculatorImpl – the implementation for the remote service.

The CalculatorServer – a simple server that provides the bare essentials for hosting.

The CalculatorClient – a user process that inputs some values, calls the services from server of addition, subtraction, multiplication and division, and then prints out the result after getting them from server.

Explanation / Answer

Answer:

Note:The program is written as per user requirement

Calculator_pro.java

import java.rmi.Remote;

import java.rmi.RemoteException;

public interface Calculator_pro extends Remote

{

public long addition(long a1,long b1)throws RemoteException;

}

Calculator_Impl.java

import java.rmi.RemoteException;

import java.rmi.server.UnicastRemoteObject;

public class Calculator_Impl extends UnicastRemoteObject implements Calculator_pro

{

protected Calculator_Impl()throws RemoteException

{

super();

}

public long addition(long a1,long b1)throws RemoteException

{

return a1+b1;

}

public long subraction(long a1, long b1) throws java.rmi.RemoteException {

        return a1 – b1;

    }

    public long multiplication(long a1, long b1) throws java.rmi.RemoteException {

        return a1 * b1;

    }

    public long division(long a1, long b1) throws java.rmi.RemoteException {

        return a1 / b1;

    }

}

}

CalculaorServer.java

import java.rmi.Naming;

public classs CalculaorServer

{

Calculator_Server()

{

try

{

Calculator_pro c new Calculator_Impl();

Naming.rebind("mi://127.0.0.1099/CalculatorService",c);//another system additionress

}

catch(Exception e)

{

e.printStackTrace();

}

}

public static void main(String args[])

{

new Calculator_Server();

}

Calculator_Client.java

import java.rmi.Naming;

public class Calculator_Client

{

public static void main(String[] Args)

{

try

{

Calculator_pro c=(Calculator_pro)Naming.lookup("//127.0.0.1:1099/CalculatorService");//client host (i.e your system additionress)

System.out.println("Addition:"+c.addition(10,15);

System.out.println( "Subraction"+c.subraction(4, 3) );

System.out.println( "Multiplication"+c.multiplication(3, 6) );

System.out.println( "Division"+c.division(9, 3) );

catch(Exception e)

{

System.out.println(e)

}

}

}

Sample output:

From client side:

Additionition:25

Subractionraction:1

Multiplicationtiplication:18

Divisionision:3

Answer:

Note:The program is written as per user requirement

Calculator_pro.java

import java.rmi.Remote;

import java.rmi.RemoteException;

public interface Calculator_pro extends Remote

{

public long addition(long a1,long b1)throws RemoteException;

}

Calculator_Impl.java

import java.rmi.RemoteException;

import java.rmi.server.UnicastRemoteObject;

public class Calculator_Impl extends UnicastRemoteObject implements Calculator_pro

{

protected Calculator_Impl()throws RemoteException

{

super();

}

public long addition(long a1,long b1)throws RemoteException

{

return a1+b1;

}

public long subraction(long a1, long b1) throws java.rmi.RemoteException {

        return a1 – b1;

    }

    public long multiplication(long a1, long b1) throws java.rmi.RemoteException {

        return a1 * b1;

    }

    public long division(long a1, long b1) throws java.rmi.RemoteException {

        return a1 / b1;

    }

}

}

CalculaorServer.java

import java.rmi.Naming;

public classs CalculaorServer

{

Calculator_Server()

{

try

{

Calculator_pro c new Calculator_Impl();

Naming.rebind("mi://127.0.0.1099/CalculatorService",c);//another system additionress

}

catch(Exception e)

{

e.printStackTrace();

}

}

public static void main(String args[])

{

new Calculator_Server();

}

Calculator_Client.java

import java.rmi.Naming;

public class Calculator_Client

{

public static void main(String[] Args)

{

try

{

Calculator_pro c=(Calculator_pro)Naming.lookup("//127.0.0.1:1099/CalculatorService");//client host (i.e your system additionress)

System.out.println("Addition:"+c.addition(10,15);

System.out.println( "Subraction"+c.subraction(4, 3) );

System.out.println( "Multiplication"+c.multiplication(3, 6) );

System.out.println( "Division"+c.division(9, 3) );

catch(Exception e)

{

System.out.println(e)

}

}

}

Sample output:

From client side:

Additionition:25

Subractionraction:1

Multiplicationtiplication:18

Divisionision:3

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote