【问题标题】:Access to EJB over Remote and local by interface通过远程和本地接口访问 EJB
【发布时间】:2020-09-03 15:51:16
【问题描述】:

在我们的 JEE 应用程序中,我们有一个基础服务。这个服务应该有一个接口。

public interface BasisServiceA

这个服务的实现是一个bean。

@Remote(BasisServiceA.class)
@LocalBean
public class BasisServiceAImpl implements BasisServiceA {
...
}

此服务将被称为远程,例如通过 JMS,使用 remote 接口。
现在,我们希望通过相同的界面,在我们的应用程序内部使用相同的服务。
问题:

  • 我们如何通过接口从应用程序访问服务?

注意事项:

  • 我们不想直接使用 BasisServiceAImpl 类。
  • @LocalBean 不允许使用限定符,但 @Local 允许
  • 使用与限定相同的接口会混淆 DI?
  • 第二个接口(例如 @Local(BasisServiceALocal) )是唯一的解决方案吗?

【问题讨论】:

    标签: jakarta-ee dependency-injection interface ejb


    【解决方案1】:

    您正在尝试解决一个不存在的问题。只需在您的应用程序中注入远程接口并将其留给应用程序服务器来确定您正在从相同的应用程序上下文调用 bean 并进行优化(即没有参数/返回值的序列化/反序列化)。相信我,实现应用程序服务器的人并不愚蠢,他们花了很多时间思考如何优化他们的服务器。这个几乎是免费赠品。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-23
      • 2014-01-21
      • 1970-01-01
      相关资源
      最近更新 更多