Клиент Java RMI, использующий сервер C # TcpChannel - PullRequest
1 голос
/ 25 января 2012

Так, у нас есть эта система, которая работает следующим образом:

У нас есть Java WS, который доступен WWW, поэтому наши клиенты могут получить к нему доступ из любого места.

Java WS - это просто мост к .NET C # WS , который находится в нашей локальной интрасети. .NET C # WS использует клиент TcpChannel для подключения к Windows Service , которая прослушивает TcpChannel, поэтому мы можем вызывать его методы из . NET C # WS

Вопрос:

Я пытаюсь устранить необходимость в .NET C # WS - что означает - Я хочу использовать Java RMI для вызова удаленного метода в C # Windows Service

Можно ли сделать такую ​​вещь? Я много гуглил и ничего не нашел.

Любая помощь приветствуется!

Ответы [ 2 ]

2 голосов
/ 25 января 2012

Некоторый анализ и предложение

  • Java RMI работает только между двумя виртуальными машинами Java (JVM). Это протокол, который понимает только JVM.
  • Таким образом, вы не можете вызвать C # программу с использованием Java RMI.
  • Как вы упомянули, Java WS - это просто фасад .NET C # WS . -Я не уверен, зачем вам фасадный веб-сервис! Интерфейсы веб-служб не зависят от платформы / технологии, и ваши клиенты должны иметь прямой доступ к .NET C # WS .

Я предполагаю, что вы используете стандартный протокол веб-сервисов, такой как SOAP.

1 голос
/ 25 января 2012

Позвольте службе Windows разместить некоторый сервер, поддерживающий RPC.

Некоторые альтернативы:

  • WCF ServiceHost
  • JSON RPC
  • XML RPC
...