1 Reply Latest reply on Jun 17, 2007 8:30 AM by Flush

    Module name included in Global JNDI name of SB???

    Flush Newbie

      Hi, I built an ear application which internally contains an EJB3 module. The ear file is named:

      jemos-ejb3-ear-1.0.0

      I also defined a SLSB with just the @Stateless annotation (but the same happens also if I specify the name or mappedName. When I look at the Global JNDI name, I can see the following:


      +- jemos-ejb3-ear-1.0.0 (class: org.jnp.interfaces.NamingContext)
      | +- EmployeeSB (class: org.jnp.interfaces.NamingContext)
      | | +- remote (proxy: $Proxy77 implements interface uk.co.jemos.ejb3.sessions.EmployeeService,interface org.jboss.ejb3.JBossProxy,interface javax.ejb.EJBObject)


      So the only way I can get a reference to the SLSB from an external client, once obtained the InitialContext, is to perform a lookup like:

      EmployeeService service =
      (EmployeeService) context.lookup("jemos-ejb3-ear-1.0.0/EmployeeSB/remote");

      Now this in my opinion looks ugly. I'd like to have only EmployeeSB/remote instead of specifying the ear name (also because the version number changes!!)

      What's the way of doing this?

      Regards,