5497l4 Listing 4. UseCalculator.java, Which Connects To and Uses Our Calculator EJB package il.co.lerner.calculator; import javax.naming.InitialContext; import javax.rmi.PortableRemoteObject; import il.co.lerner.calculator.Calculator; import il.co.lerner.calculator.CalculatorHome; class UseCalculator { public static void main(String[] args) { try { // Get a naming context InitialContext jndiContext = new InitialContext(); System.out.println("Got context"); // Get a reference to the Calculator Bean Object ref = jndiContext.lookup("calculator/Calculator"); System.out.println("Got reference"); // Get a reference from this to the Bean's Home interface CalculatorHome home = (CalculatorHome) PortableRemoteObject.narrow(ref, CalculatorHome.class); // Create a Calculator object from the Home interface Calculator calculator = home.create(); // call multiply() System.out.println("Multiplying 2 x 3:"); System.out.println(calculator.multiply(2, 3)); } catch(Exception e) { System.out.println(e.toString()); } } }