1

我需要访问部署在 JBoss AS 6 中的 EJB,但我使用的是 JBoss AS 7.1.1 Final,它放弃了 JNP 查找。

是否可以这样做,或者我需要降级到 JBoss AS 6(升级其他服务器是不可能的)?

我已经挖掘了 AS 7 论坛和 SO,但没有找到任何参考资料。

提前致谢!

4

1 回答 1

2

一般来说,两个不同服务器之间的 EJB 远程通信永远不会起作用。

JBoss 以完全不关注兼容性而著称。即使是版本上的微小差异(例如次要的安全更新)也足以破坏兼容性。我知道 JBoss AS 5 和 6 之间的 EJB 远程处理不起作用,而且我很确定它在 6 和 7 之间不起作用。

问题的根源在于 Java EE 从未指定应该如何进行远程 bean 发现以及对客户端的具体要求是什么(一个例外是应用程序客户端容器,它只在 Java SE 中工作,并且非常神秘,几乎没有人使用它)。

大多数供应商使用某种客户端 jar,在 Jboss 的情况下它几乎是整个服务器。因为它几乎是整个服务器,所以您不能将它包含在另一台服务器中,因为数百甚至数千个类都会发生冲突。

一位 Jboss 员工曾经开始使用隔离类加载器进行实验,该类加载器将加载与主服务器隔离的这些客户端库,但据我所知,没有人能做到这一点。

于 2013-02-15T19:04:22.203 回答