Problem doing jndi lookup for EJB

ejbjbossjndilookup

Im having trouble doing a lookup

Project Structure:
a dynamic web project (gss-web) and an EJB project (gss-ejb) deployed together inside an .ear (gss-ea) onto a jboss 6 server

Exception:
javax.naming.NamingException: Could not dereference object [Root exception is javax.naming.NameNotFoundException: gss-ea not bound]

Code – From inside a managed bean in my web project:

InitialContext ctx = new InitialContext( );
return ( CodesService )ctx.lookup( "java:/global/gss-ea/gss-ejb/CodesBean" );

java Namespace : jndi tree (from jmx console on jboss):
 +- global (class: org.jnp.interfaces.NamingContext)
  |   +- jmx-console (class: org.jnp.interfaces.NamingContext)
  |   +- ROOT (class: org.jnp.interfaces.NamingContext)
  |   +- uuid-key-generator (class: org.jnp.interfaces.NamingContext)
  |   +- http-invoker (class: org.jnp.interfaces.NamingContext)
  |   |   +- invoker (class: org.jnp.interfaces.NamingContext)
  |   +- gss-ea (class: org.jnp.interfaces.NamingContext)
  |   |   +- gss-web (class: org.jnp.interfaces.NamingContext)
  |   |   +- gss-ejb (class: org.jnp.interfaces.NamingContext)
  |   |   |   +- CorporateActionBean!com.comp.gss.session.CorporateActionService[link -> gss-ea/CorporateActionBean/local-com.comp.gss.session.CorporateActionService] (class: javax.naming.LinkRef)
  |   |   |   +- CodesBean!com.comp.gss.session.CodesService[link -> gss-ea/CodesBean/local-com.comp.gss.session.CodesService] (class: javax.naming.LinkRef)
  |   |   |   +- BasketBean!com.comp.gss.session.BasketService[link -> gss-ea/BasketBean/local-com.comp.gss.session.BasketService] (class: javax.naming.LinkRef)
  |   |   |   +- FPBean[link -> gss-ea/FPBean/local-com.comp.gss.session.FPService] (class: javax.naming.LinkRef)
  |   |   |   +- CodesBean[link -> gss-ea/CodesBean/local-com.comp.gss.session.CodesService] (class: javax.naming.LinkRef)
  |   |   |   +- PopulationBasketBean!com.comp.gss.session.PopulationBasketBean[link -> gss-ea/PopulationBasketBean/no-interface] (class: javax.naming.LinkRef)
  |   |   |   +- CorporateActionBean[link -> gss-ea/CorporateActionBean/local-com.comp.gss.session.CorporateActionService] (class: javax.naming.LinkRef)
  |   |   |   +- OutputBean!com.comp.gss.session.OutputService[link -> gss-ea/OutputBean/local-com.comp.gss.session.OutputService] (class: javax.naming.LinkRef)
  |   |   |   +- FPBean!com.comp.gss.session.FPService[link -> gss-ea/FPBean/local-com.comp.gss.session.FPService] (class: javax.naming.LinkRef)
  |   |   |   +- PopulationBean[link -> gss-ea/PopulationBean/local-com.comp.gss.session.PopulationService] (class: javax.naming.LinkRef)
  |   |   |   +- BasketBean[link -> gss-ea/BasketBean/local-com.comp.gss.session.BasketService] (class: javax.naming.LinkRef)
  |   |   |   +- PopulationBean!com.comp.gss.session.PopulationService[link -> gss-ea/PopulationBean/local-com.comp.gss.session.PopulationService] (class: javax.naming.LinkRef)
  |   |   |   +- PopulationBasketBean!com.comp.gss.session.PopulationBasketService[link -> gss-ea/PopulationBasketBean/local-com.comp.gss.session.PopulationBasketService] (class: javax.naming.LinkRef)
  |   |   |   +- OutputBean[link -> gss-ea/OutputBean/local-com.comp.gss.session.OutputService] (class: javax.naming.LinkRef)

Any help would be greatly appreciated. Thanks in advance!

/Eric

Best Answer

Try:

return ( CodesService )ctx.lookup( "java:global/gss-ea/gss-ejb/CodesBean" );

Note: no "/" before "global".

Related Topic