Я играю с P2P .
Я хочу использовать JAX-WS для связи в сети P2P.
Некоторые узлы находятся «за брандмауэром», поэтому они не могут прослушивать порты .
(Они действуют как клиенты).
Другие узлы могут прослушивать порты. (Они действуют как серверы
(и клиенты)).
Теперь я хочу иметь возможность абстрагироваться от того, что сверстники
являются сервером, а какие нет. Таким образом, сверстники должны быть в состоянии выполнить
команды веб-сервисов друг на друга,
с равными "способностями" для одноранговых серверов и клиентских одноранговых узлов.
В "мире без веб-сервисов" я бы открыл сокет, а после
сокет открыт, серверы могут общаться с клиентами
точно так же клиенты общаются с серверами
( в обоих направлениях одинаково , потому что соединение остается открытым).
Но JAX-WS основан на (без сохранения состояния) HTTP , и не существует такой вещи, как
"HTTP соединения".
Итак, серверы не могут сделать клиентский вызов, верно?
Что можно сделать, чтобы преодолеть это?