【问题标题】:Looking up an EJB dynamically动态查找 EJB
【发布时间】:2011-03-25 01:23:45
【问题描述】:

我正在 Glassfish 3 上开发一个应用程序。我有一个如下所示的 EJB:

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

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

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

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

【问题讨论】:

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


    【解决方案1】:

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

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

    顺便说一句,GlassFish 在部署时记录可移植 JNDI 名称。

    【讨论】:

    • 我的消息来源:devx.com/tips/Tip/35010roseindia.net/ejb/ejb-lookup.shtml。看来他们俩都完蛋了。
    • @Mike 在 EJB 3.1 之前,JNDI 名称没有标准化,因此没有一般规则,JNDI 名称取决于应用服务器。 PS:我倾向于忽略roseindia和devx的“技术提示”,我不认为它们是高质量的资源。
    猜你喜欢
    • 1970-01-01
    • 2015-01-25
    • 2014-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-01
    • 1970-01-01
    相关资源
    最近更新 更多