Как настроить отдельную оркестровку только для веб-служб?

Я создал Orchestration, объявивший веб-сервис для управления заказами на продажу. Это прекрасно работает, однако я хочу переместить Web-сервис в его собственную оркестровку и иметь возможность вызывать оркестровку, когда это необходимо для других оркестровок. Каждый веб-метод имеет назначенное сообщение из нескольких частей.

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

  • Как мне правильно настроить порты?
  • Какой правильный метод и рекомендации я должен использовать при создании специального оркестровки или приложения для этой цели?
  • Как будет выглядеть оркестровка?
  • Нужно ли мне настраивать порты в оркестровке "указать сейчас"?

Веб-методы для рассматриваемой веб-службы

  1. getCustomerItemPrice (запрос / ответ)
  2. getitemListPrice (запрос / ответ)
  3. getItemPriceAndAvalability (запрос / ответ)
  4. getSalesOrder (запрос / ответ)
  5. getSalesOrderHistory (запрос / ответ)
  6. processSalesOrder (запрос / ответ)
  7. processSalesPriceAdjustment (запрос / ответ)

Подсказка 'Удерживайте клавишу Shift, нажимая на гиперссылку, чтобы просмотреть текущую настройку моего Orchestration & Web Service.

https://skydrive.live.com/redir.aspx?cid=533fd5a521c8c878&resid=533FD5A521C8C878!1857&parid=533FD5A521C8C878!1856

1 ответ

Проблема, с которой вы столкнулись, заключается в том, что ваш порт веб-службы тесно связан с существующей оркестровкой, поскольку различные операции с портом вызываются на разных этапах во время выполнения оркестровки. Поэтому может оказаться невозможным переместить весь порт веб-службы из этой оркестровки в одну другую оркестровку.

Если вы действительно хотите абстрагировать этот вызов веб-службы от этой оркестровки, тогда вы столкнулись с большим упражнением по рефакторингу. Возможно, вам потребуется выполнить хотя бы некоторые из следующих шагов:

  • Разделите веб-порт на отдельные порты для каждой операции сервиса, которую вы хотите вызвать
  • Создайте оркестровку, чтобы обернуть каждый вызов службы.
  • Перенесите запрос на обслуживание и ответные сообщения в соответствующие оркестровки
  • Определите новые сообщения для передачи в вызываемые оркестровки, эффективно отделяя вашу звонящую оркестровку от ваших новых оркестровок.

Если честно, я не уверен, что вижу в этом огромную ценность, если только вы не ожидаете многократного повторного использования этих компонентов.

Другие вопросы по тегам