public interface Calculator extends EJBObject
{
	public double dollarToRs(double dollars) throws RemoteException;
}
Pgm2
=====
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.rmi.PortableRemoteObject;
public class CalculatorClient extends JFrame
{
	public static int w=500;
	public static int h=95;
	public static String str="Earnest bank Welocme You";
	Container c;
	JLabel l,result;
	JTextField t;
	JButton b;
	public  static String value;
	public  static  double dbl;
	public static double amt;
	public CalculatorClient()
	{
		super(str);
		c= getContentPane();
		c.setLayout(new GridLayout(2,2,2,2));
		l=new JLabel("Enter the amount in Dollars");
		c.add(l);
		t= new JTextField(10);
		c.add(t);
		b= new JButton("Calculate");
		c.add(b);
		result = new JLabel();
		c.add(result);
		value = t.getText();
		b.addActionListener(new addEvent());
		setSize(w,h);
		show();
	}
	public class addEvent implements ActionListener
	{
		public void actionPerformed(ActionEvent e)
			{
			value = t.getText();
			dbl = Double.parseDouble(value);
			try
			{
				Context ic= new InitialContext();
				Object obj = ic.lookup("CalculatorJNDI");
				CalculatorHome home =
(CalculatorHome)PortableRemoteObject.narrow(obj,CalculatorHome.class);
				Calculator calc = home.create();
				amt =  calc.dollarToRs(dbl);
				result.setText("Result(Rs.):"+String.valueOf(amt));
			}
			catch(Exception ex)
			{
			System.err.println("Caught as unexpected exception!");
			ex.printStackTrace();
			}
			}
	}
	public static void main(String args[])
		{
		CalculatorClient m = new CalculatorClient();
		}
}
Pgm3
======
import java.rmi.RemoteException;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;
public class CalculatorEJB implements SessionBean
{
	public double dollarToRs(double dollars)
		{
		return dollars*47.20;
		}
	public CalculatorEJB()	{}
	public void ejbCreate()	{}
	public void ejbRemove()	{}
	public void ejbActivate()	{}
	public void ejbPassivate()	{}
	public void setSessionContext(SessionContext sc)	{}
}
Pgm4
========
import javax.ejb.EJBObject;
import java.io.Serializable;
import javax.ejb.CreateException;
import javax.ejb.EJBHome;
import java.rmi.RemoteException;
public interface CalculatorHome extends EJBObject
{
	Calculator create() throws RemoteException,CreateException;
}