Сохранение разрывов строк в исходящем настраиваемом заголовке BizTalk - PullRequest
0 голосов
/ 21 марта 2019

Я получаю сообщение с защитным билетом SAML в заголовке. Этот билет необходимо отправить в исходящем звонке без изменений. В оркестровке BizTalk я установил это как исходящий настраиваемый заголовок для сообщения, которое я отправляю. Полученный билет безопасности содержит теги, разделенные переносами строк (CR + LN):

<SignedInfo>
<OtherTag/>
<SomeTag>ABC</SomeTag>
</SignedInfo>

Я устанавливаю исходящие заголовки с учетом следующих разрывов строк:

MessageOut(WCF.OutboundCustomHeaders) = < string with header >

Проблема заключается в том, что когда адаптер WCF-Custom собирает полный запрос SOAP с заголовком и телом, эти разрывы строк между тегами удаляются:

<SignedInfo><OtherTag/><SomeTag>ABC</SomeTag></SignedInfo>

Это приводит к тому, что билет становится недействительным и отклоняется.

Есть ли идеи, как сохранить эти разрывы строк?

1 Ответ

0 голосов
/ 22 марта 2019

Итак, проблема не в вас, вашем приложении или BizTalk Server.Это другой сервис, использующий Xml, который не следует правилам Xml.К сожалению, они сделали вашу и любую другую проблему клиентом для решения.

Не пишите пользовательский класс c # для обработки этого сообщения, это просто создает больше проблем.

Сначалапопробуйте пользовательское поведение WCF или инспектор сообщений , который вставляет токен в заголовок.

...