动态查找EJB

时间:2010-08-04 03:13:07

标签: java java-ee java-ee-6 glassfish-3 ejb-3.1

我正在Glassfish 3上开发一个应用程序。我有一个看起来像这样的EJB:

@LocalBean
@Stateless
public class MyBean {
  public void doSomething() {}
}

我的客户端代码(在同一个应用程序中运行)如下所示:

MyBean mb = (MyBean) InitialContext.doLookup(MyBean.class.getName());

根据一些消息来源,这应该是一个有效的查找方法,但它会抛出一个NameNotFoundException。我做错了什么?

1 个答案:

答案 0 :(得分:2)

根据什么来源?我个人会使用EJB 3.1中指定的可移植JNDI名称。参见:

根据包装的不同,我会使用模块范围或应用程序范围的JNDI名称。

BTW,GlassFish在部署时记录可移植的JNDI名称。