3

嗨,我正在开发一个 Grails 应用程序,它必须与现有的 Java EE 应用程序(使用 EJB2 构建)进行通信。“旧版”应用程序和新的 Grails 应用程序都将提供服务并使用它们。

出于互兼容性的原因,我正在考虑使用 WebServices 进行通信。现在我想知道我应该在双方都使用哪些框架。

由于 Java EE 应用程序现在在 JDK5 下运行,我可以使用 JAX-WS 我想在 Grails 端使用 Metro ( https://jax-ws-commons.dev.java.net/grails/ ) 是有意义的. 有没有人有这方面的经验?或者其他建议?

4

1 回答 1

3

如果 Grails 和 EJB 应用程序都存在于同一个 LAN 上,那么使用 RMI 就没有问题。它是与 EJB 对话的默认方式,是 Java 原生的,并且在 Grails 中受支持。

如果您需要使用 Web 服务,那么您的容器将内置支持将 EJB 公开为 Web 服务(假设 J2EE 1.4 或更高版本)。你用的是哪个容器?

如果您不能使用(或不信任)WS 支持的容器,那么最好选择一个您可以在两个应用程序中使用的框架,从而避免兼容性问题。Metro 独立运行对我来说效果很好,但我还没有在 Grails 上尝试过。

还有比完整的 SOAP'y Web 服务更轻量级的交换 XML 消息的方法。Hessian 和 Burlap 就是例子,另外 Spring 有自己的 HTTP 消息传递框架。

于 2008-09-27T17:35:46.283 回答