Сообщение не принимается с порта отправки типа WCF onRamp в BizTalk
У меня есть Orchestration в моем приложении, которое получает сообщение XML в качестве входных данных от MSMQ, обрабатывает его и затем, в конце концов, отправляет его на порт отправки OnRamp WCF. Теперь порт OnRamp имеет следующие настройки:
Приложение: MyApplication
Приоритет: 5
Route Failed Message: ложь
Остановить отправку при ошибке: false
Отправить конвейер: Microsoft.BizTalk.DefaultPipelines.PassThruTransmit
Динамический: ложь *
Двусторонний: ложный
Адрес: http://localhost/ESB.ItineraryServices.Generic.WCF/ProcessItinerary.svc
Тип: WCF-WSHttp
- Обработчик отправки: BizTalkServerApplication
Мое требование заключается в том, что когда оркестровка отправляет XML (как вывод в конце) на этот порт, эти сообщения должны выбираться другими оркестровками, чего не происходит в моем случае. Все сообщения застряли в этом порту. Пожалуйста, помогите мне с этой проблемой.
Спасибо!
2 ответа
Итак, насколько я понимаю из вашего вопроса, вам нужно вызвать другую оркестровку из первой оркестровки. И, вероятно, вы используете ESB Toolkit (обычно мы используем термины offRamp и onRamp с инструментарием).
ESB Toolkit Way:
Я бы предложил использовать расширитель маршрута и оркестровки для маршрутизации сообщений. Внутренне он использует только фундамент DirectBound. Вот пример этого.
Без ESB Toolkit:
То, что предложил Том У, было правильно. Но убедитесь, что при создании подписки на порте прямой привязки второй оркестровки свойства контекста, используемые в выражении фильтра, должны быть уникальными, в противном случае, если выражение фильтра является универсальным и соответствует нескольким подписчикам, каждый подписчик выберет копию сообщения.
Почему сообщения, которые направляются на физический порт отправки, будут приниматься другой оркестровкой?
Если вы хотите именно такое поведение, я не думаю, что порт отправки WCF - это правильный подход. Если вы хотите, чтобы сообщения, опубликованные оркестровкой, активировали другую оркестровку, используйте порт с прямой связью, который будет записывать эти сообщения непосредственно в окно сообщения. Затем установите соответствующую подписку для формы получения активации второй оркестровки, которая, как вы уверены, будет соответствовать опубликованным сообщениям.