【问题标题】:Dropwizard and EJB integrationDropwizard 和 EJB 集成
【发布时间】:2015-01-12 13:14:32
【问题描述】:

朋友们,

我想使用 Dropwizard 访问封装在 Glassfish 上托管的 EJB 层中的业务逻辑。

来自 Dropwizard 网站,Dropwizard 使用 Jetty 作为内置应用程序服务器。据我所知,这与 EJB 不兼容。

如何构建一个可以使用我的业务层的 Web 服务层,同时我可以利用在任何地方运行的 .jar 服务?

问候,

【问题讨论】:

    标签: glassfish ejb dropwizard


    【解决方案1】:

    使用 EJB Web 服务不需要使用 EJB。它只是基于 HTTP 的 SOAP,因此您可以使用简单的 HTTP 客户端应用程序来完成。

    通常您会从 wsdl 生成代理代码以与 JAVA 一起使用,请查看 apache cxf 或 jaxws-maven-plugin。

    【讨论】:

    • 它不是 EJB Web 服务。封装业务层的是普通的EJB。通常你使用 (@)EJB 注解来注入一个 bean 并使用它。那么如何在 Dropwizard 中使用 (@)EJB 呢?默认情况下不支持此功能
    • 不,你不能使用@EJB。但是您可以使用远程 ejb 客户端 api,查找服务并调用其方法。那是标准的远程处理,也可以在 dw 中工作。