1

使用 HTTPInvoker 从 EJB2.0 远程处理升级到 Spring 远程处理的重要动机是什么?我发现在 EJB2.0 中,客户端代码必须进行 jndi 查找,而在服务器端,我们需要编写额外的类和接口(远程、家庭)。在 Spring HTTPInvoker 中,我们只需将远程 EJB bean 配置为服务即可。只是想知道除此之外是否还有其他好处。如果这是唯一的好处,如何决定是使用 Web 服务还是 HTTPInvoker?

4

1 回答 1

1

Spring 的 HTTPInvoker 是一个非常简单的 RPC-over-HTTP 机制,使用标准的 java 序列化。如果这符合您的要求,那么一定要使用它。

但是,它与 EJB 样式的远程处理相距甚远,后者不仅更高效(HTTP 远程处理性能不是很好),还增加了事务和安全性等设施。这两者都可以由 Spring 提供,但这意味着额外的布线和配置。

至于 HTTPInvoker 和适当的 Web 服务之间的决定,前者是高度专有的(两端必须是 Spring),并且将客户端与服务器紧密耦合(它们必须是序列化兼容的)。适当的 Web 服务符合标准且与客户端无关(如果操作正确)。

于 2010-12-07T11:38:21.607 回答