Требуется стандартный подход для создания интерфейса SOAP для развернутой службы REST - PullRequest
0 голосов
/ 28 ноября 2009

Мы хотим разрешить нашему предприятию поставщиков услуг развертывать решения REST или SOAP. Эти сервисы станут кандидатами в качестве «авторитетных» конечных точек сервиса для конкретного запроса, сделанного потребителем корпоративному брокеру. Поэтому нам нужен механизм для создания интерфейса на основе SOAP, который будет предоставлен посредником, когда поставщик публикует свою службу REST посреднику. Любые ссылки о том, как подойти к этому в нормализованном порядке?

Ответы [ 3 ]

1 голос
/ 29 ноября 2009

REST-эквивалент WSDL называется WADL . Вы можете изучить подход, при котором поставщик услуг REST отправляет вам описание своего API в WADL, вы переводите WADL в WSDL, а из WSDL генерируете API-интерфейсы SOAP, предлагаемые вашим брокером. При преобразовании WADL в WSDL одновременно генерируется логика сопоставления, используемая вашим брокером для преобразования каждого запроса SOAP в базовый запрос REST поставщика услуг. Не знаю, насколько простым было бы это отображение.

Однако, Дэвид Чаппелл указывает , что:

Предоставление услуг RESTfully - лучший выбор в большинстве ситуации, особенно через Интернет. SOAP и WS- * технологии все еще играют определенную роль, особенно внутри предприятий.

Каждый поставщик услуг принимает инженерное решение для поддержки REST, SOAP или обоих. Если поставщик услуг определил, что REST-only был подходящим выбором для их веб-службы, то почему добавление посредника, который отображает его в менее подходящий вариант, принесло бы какую-то ценность? Разве вы не просто добавили слой сложности и неэффективности?

1 голос
/ 28 ноября 2009

Приятной особенностью REST является то, что интерфейсы почти всегда одинаковы. Вы могли бы, вероятно, определить интерфейс SOAP, который обобщает операции CRUD службы REST многоразовым способом.

Однако я не уверен, почему вы хотите инкапсулировать REST-сервис в слой SOAP. Клиенты службы, вероятно, найдут исходную службу REST такой же простой в использовании, как и автоматически сгенерированный интерфейс SOAP, если не больше.

0 голосов
/ 01 декабря 2009

Проверьте Мул как способ сделать это. Mule может выступать в качестве прокси-сервера и сопоставлять внешние запросы SOAP с любым другим запросом службы, включая REST.

...