【问题标题】:Glassfish, problem obtaining EJB through JNDIGlassfish,通过 JNDI 获取 EJB 的问题
【发布时间】:2011-06-22 19:48:58
【问题描述】:

我正在尝试从 EJB1 获取对 EJB2 的引用。 EJB2 是单独部署的,但它们都在同一个容器中运行。我在 EJB1 中使用以下代码:

Context ctx = new InitialContext();
Connector connector = (Connector) ctx.lookup("java:global/earFile/ejbArtifact/EJB2")

Connector是EJB1封装的接口。它是由 EJB2 实现的。

上面的 sn-p 会给我以下异常信息:

$Proxy283 cannot be cast to Connector

我在这里错过了什么?

【问题讨论】:

  • 如果你这样做会发生什么? System.out.println(ctx.lookup(...).getClass().getName());
  • 显示$Proxy283。但我想通了,我会在下面发布。

标签: jakarta-ee glassfish jndi


【解决方案1】:

问题是Connector 接口必须被注释为@Local 接口。现在可以了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多