Java RMI связь с не Java-сущностью? - PullRequest
0 голосов
/ 02 октября 2010

Можно ли общаться с не Java-сущностью по протоколу RMI? Что особенного в RMI IIOP?

Thx

Ответы [ 3 ]

1 голос
/ 02 октября 2010

RMI - это протокол, который должен использоваться исключительно Java-приложениями. Он предъявляет некоторые требования к общению, которые зависят от реализации Java (например, сериализация). С другой стороны, RMI IIOP является протоколом, который используется реализацией EJB для добавления дополнительных функциональных возможностей к коммуникации (например, распространение контекста транзакции).

IIOP родом из CORBA и может использоваться для связи с компонентами, написанными на других языках.

Я бы не пошел по пути веб-служб, если вам нужно использовать функции, доступные в IIOP. Если, конечно, вы не использовали бы соответствующие спецификации WS- * для их получения.

1 голос
/ 02 октября 2010

Это технически возможно. Вам нужно будет внедрить RMI-сервер на стороне не-java .

Я бы не советовал. Попробуйте изучить возможность использования WebServices, которые обычно используются для этого: взаимодействие сущностей с (вероятно) разных платформ .

0 голосов
/ 02 августа 2013

Старый вопрос, но, но ответ из-за высокого рейтинга Google

Я не думаю, что вы могли бы сделать это легко.

В качестве альтернативы Java-RMI я бы рекомендовал XML-RPC .

Затем вы можете общаться с Python, C ++, Objective-C, Erlang, Groovy, Java, JavaScript, PHP и многими другими.

На стороне Java вы можете использовать Apache XML-RPC-библиотеку .

Pro: множество реализаций для разных языков

Con: XML-RPC знает примитивы и двоичные файлы в кодировке base64. Они не будут обрабатывать ваши сложные объекты Java, но предоставят вам карту. Вам нужно сопоставить их с вашими объектами самостоятельно .---

...