1 /** 2 * 3 * Copyright 2003-2004 The Apache Software Foundation 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 18 package org.acme; 19 20 import javax.naming.Context; 21 import javax.naming.InitialContext; 22 import javax.rmi.PortableRemoteObject; 23 24 /** 25 * Run this app client from the command line and pass in a question as an argument. 26 * 27 * @version $Rev: 356022 $ $Date: 2005-12-11 12:58:34 -0800 (Sun, 11 Dec 2005) $ 28 */ 29 public class MagicGBallClient { 30 public static void main(String[] args) throws Exception{ 31 if (args.length < 1){ 32 System.err.println("Please ask a question"); 33 System.exit(-1); 34 } 35 36 MagicGBallClient magicGBallClient = new MagicGBallClient(); 37 for (int i = 0; i < args.length; i++) { 38 magicGBallClient.ask(args[i]); 39 } 40 } 41 42 public void ask(String question) throws Exception { 43 Context ctx = new InitialContext(); 44 Object o = ctx.lookup("java:comp/env/mGball"); 45 MagicGBallHome ejbHome = (MagicGBallHome) PortableRemoteObject.narrow(o, MagicGBallHome.class); 46 MagicGBall mGball = ejbHome.create(); 47 String answer = mGball.ask(question); 48 49 System.out.println(answer); 50 } 51 52 }