支持分布式互操作性

Support for Distributed Interoperability

EJB 3.1 规范在第 10 章中说明了以下内容。 "This chapter describes the interoperability support for accessing an enterprise bean through the EJB 2.1 remote client view from clients distributed over a network, and the distributed interoperability requirements for invocations on enterprise beans from remote clients that are Java Platform, Enterprise Edition (Java EE) components. Distributed Interoperability is not defined for the EJB 3.x remote client view."

这是否意味着从 EJB 3.x 开始,EJB 提供者可以自由 select 远程 EJB 调用的协议? 还有为什么决定不从 EJB 3.x 定义互操作性?

是的,实现可以自由select他们的协议。

软件行业已经(并且仍在)远离 RMI-IIOP/CORBA,这可能是唯一可以使用的可行协议,EJB 3 专家组(和供应商)可能无法证明指定(和实施)自定义协议所需的巨大努力是合理的。我不清楚 EJB 3 是否应该定义 @Remote 而不是仅仅添加 @RemoteHome (即,只为现有功能定义一个等效的注释而不是添加新功能),但我猜 EJB专家组决定添加它只是为了保持一致性。