EJB2 на разных версиях JBoss - PullRequest
4 голосов
/ 23 июня 2010

Мне нужно использовать некоторые EJB, которые развернуты на JBoss версии 4.x от другого EJB, развернутого на JBoss версии 3.2.x. Возможно ли это?

Я спрашиваю, потому что у меня есть стороннее приложение, которое использует для этого какой-то странный мост, и не знаю почему (хотя я не пытался сделать это самостоятельно).

1 Ответ

4 голосов
/ 12 марта 2011

К сожалению, это невозможно. Одним из основных недостатков удаленных EJB-компонентов является то, что в спецификации нет ничего, что гарантировало бы или даже предполагало какой-либо вид взаимодействия между различными поставщиками или между различными версиями EJB от одного и того же поставщика.

На практике я обнаружил, что по крайней мере с JBoss AS он никогда не работает. Даже незначительные обновления полностью нарушают бинарную совместимость. Были некоторые очень хакерские попытки со специальными загрузчиками классов, которым был предоставлен доступ только к клиентским библиотекам целевой JBoss AS, но это очень сложно сделать правильно.

Полагаю, этот "странный мост", о котором вы говорите, использует такой трюк. Престижность тому, кто строит этот мост, чтобы заставить его работать вообще.

См. Эту тему, которую я начал на форуме сообщества JBoss, для более подробной информации: http://community.jboss.org/message/587180

...