Java Mailing List Archive

http://www.junlu.com/

Home » Home (12/2007) » JBoss User Help »

[jboss-user] [EJB 3.0] - Re: how to access more than one EJB
 containers in one JSP

scott.stark@jboss.org

2007-06-10


Haven't checked this in an IDE or anything, but this should get you the idea. Keeping in mind that business functions like obtaining and calling upon EJB3 services shouldn't really be taking place in the view layer...

<%!
| private YourEjbInterface1 ejb1 = null;
| private YourEjbInterface2 ejb2 = null;
|
| public void jspInit () {
| try {
|  
|   // Define the Connection Properties
|   Properties props1 = new Properties();
|   props1.put(InitialContext.INITIAL_CONTEXT_FACTORY,"org.jnp.interfaces.NamingContextFactory");
|   props1.put(InitialContext.PROVIDER_URL, "jnp://yourHost1:yourPort1");
|   props1.put(InitialContext.URL_PKG_PREFIXES,"org.jboss.naming:org.jnp.interfaces");
|
|   Properties props2 = new Properties();
|   props2.put(InitialContext.INITIAL_CONTEXT_FACTORY,"org.jnp.interfaces.NamingContextFactory");
|   props2.put(InitialContext.PROVIDER_URL, "jnp://yourHost2:yourPort2");
|   props2.put(InitialContext.URL_PKG_PREFIXES,"org.jboss.naming:org.jnp.interfaces");
|  
|
|   // Define the Context for Servers
|   Context ctx1 = new InitialContext(props1);
|   Context ctx2 = new InitialContext(props2);
|  
|   // Look up the EJB3 Proxies in JNDI
|   ejb1 = (YourEjbInterface1) ctx.lookup("ejb1/jndi/name");
|   ejb2 = (YourEjbInterface2) ctx.lookup("ejb2/jndi/name");
|
| } catch (Exception e) {
|   e.printStackTrace ();
| }
| }
| %>
|
| Invoke 1:
|
| <% ejb1.myMethod(); %>
|
| Invoke 2:
|
| <% ejb2.myMethod(); %>
|
|

S,
ALR

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4052904#4052904

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4052904
_______________________________________________
jboss-user mailing list
jboss-user@(protected)
https://lists.jboss.org/mailman/listinfo/jboss-user
©2008 junlu.com - Jax Systems, LLC, U.S.A.