Как настроить отдельную оркестровку только для веб-служб?
Я создал Orchestration, объявивший веб-сервис для управления заказами на продажу. Это прекрасно работает, однако я хочу переместить Web-сервис в его собственную оркестровку и иметь возможность вызывать оркестровку, когда это необходимо для других оркестровок. Каждый веб-метод имеет назначенное сообщение из нескольких частей.
Ожидается, что мне придется повторно использовать все методы веб-службы в других оркестровках и любые будущие потребности.
- Как мне правильно настроить порты?
- Какой правильный метод и рекомендации я должен использовать при создании специального оркестровки или приложения для этой цели?
- Как будет выглядеть оркестровка?
- Нужно ли мне настраивать порты в оркестровке "указать сейчас"?
Веб-методы для рассматриваемой веб-службы
- getCustomerItemPrice (запрос / ответ)
- getitemListPrice (запрос / ответ)
- getItemPriceAndAvalability (запрос / ответ)
- getSalesOrder (запрос / ответ)
- getSalesOrderHistory (запрос / ответ)
- processSalesOrder (запрос / ответ)
- processSalesPriceAdjustment (запрос / ответ)
Подсказка 'Удерживайте клавишу Shift, нажимая на гиперссылку, чтобы просмотреть текущую настройку моего Orchestration & Web Service.
1 ответ
Проблема, с которой вы столкнулись, заключается в том, что ваш порт веб-службы тесно связан с существующей оркестровкой, поскольку различные операции с портом вызываются на разных этапах во время выполнения оркестровки. Поэтому может оказаться невозможным переместить весь порт веб-службы из этой оркестровки в одну другую оркестровку.
Если вы действительно хотите абстрагировать этот вызов веб-службы от этой оркестровки, тогда вы столкнулись с большим упражнением по рефакторингу. Возможно, вам потребуется выполнить хотя бы некоторые из следующих шагов:
- Разделите веб-порт на отдельные порты для каждой операции сервиса, которую вы хотите вызвать
- Создайте оркестровку, чтобы обернуть каждый вызов службы.
- Перенесите запрос на обслуживание и ответные сообщения в соответствующие оркестровки
- Определите новые сообщения для передачи в вызываемые оркестровки, эффективно отделяя вашу звонящую оркестровку от ваших новых оркестровок.
Если честно, я не уверен, что вижу в этом огромную ценность, если только вы не ожидаете многократного повторного использования этих компонентов.