Я хочу, чтобы DCE / RPC или MSRPC работали под Java в качестве сервера. В идеале не через JNI. Мне нужно это через TCP ("ncacn_tcp"), а не по каналам ("ncacn_np").
У меня нет реальных альтернатив, потому что я должен получить доступ к унаследованному коду, работающему под c # / c ++, используя dcerpc.h из Windows SDK в качестве клиента. Наша кодовая база - Java, поэтому мы хотим, чтобы сервер был в Java.
Существует несколько (казалось бы, заброшенных) реализаций DCE / RPC или MSRPC (подвеска Microsoft для DCE / RPC).
Я взял их из Википедии: https://en.wikipedia.org/wiki/DCE/RPC#Alternate_versions_and_implementations
- jarapac
- очень многообещающе, но, похоже, заброшено с 2004 года. Реализована только клиентская часть (мне нужен сервер), документация не существует
- J-Interop
- внутренне основанный на jarapac, те же проблемы, немного больше документации, но сфокусированные на более высоких уровнях (именованные каналы для доступа к вещам smb), также, похоже, сейчас заброшены.
- JCIFS
- красиво, актуально, в maven central, НО: поддерживает ncacn_np только (я посмотрел исходный код, он буквально выдает исключение при сравнении строк в "ncacn_np". Мне нужно "ncacn_tcp "...)
Пока что я снимаюсь для JNI, но у него нет независимости от платформы, настройки проекта - беспорядок ...