summaryrefslogtreecommitdiffstats
path: root/Master/Reference Architectures and Patterns/EJB 3.0 Code/Rima Examples/src/examples/session/stateless/HelloClient.java
blob: 9becd532df313377b8a1e9896c867bd3063bf799 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
package examples.session.stateless;

import javax.naming.Context;
import javax.naming.InitialContext;
import java.util.Hashtable;

// The following import should be removed.

import examples.session.stateless.*;
import javax.naming.*;

/**
 * This class is an example of client code which invokes
 * methods on a simple, remote stateless session bean.
 */
public class HelloClient {

	public static void main(String[] args) throws Exception {
		/*
		 * Obtain the JNDI initial context.
		 *
		 * The initial context is a starting point for
		 * connecting to a JNDI tree. We choose our JNDI
		 * driver, the network location of the server, etc
		 * by passing in the environment properties.
		 */

		System.out.println("about to create initialcontext");

                Hashtable env = new Hashtable();
		env.put("java.naming.factory.initial","com.sun.enterprise.naming.SerialInitContextFactory");
		env.put("java.naming.factory.url.pkgs","com.sun.enterprise.naming");
		env.put("java.naming.provider.url","localhost:3700");
		Context ctx = new InitialContext();

		//System.out.println ("Trying to get the name of this context: " + ctx.getNameInNamespace());

		System.out.println("Got initial context ... yeah ");

		/*
		 * Get a reference to a bean instance, looked up by class name
		 */
		NamingEnumeration ne = ctx.list("");
		System.out.println("Got list... ");
                while(ne.hasMore())
		{
                        NameClassPair nc = (NameClassPair)ne.next();
			System.out.println("Entry is ... "+nc.getName()+" -- "+nc.getClassName());
		}

		Hello hello = (Hello) ctx.lookup("examples.session.stateless.Hello");

		/*
		 * Call the hello() method on the bean.
		 * We then print the result to the screen.
		 */
		System.out.println(hello.hello());
	}
}