У меня есть сценарий, когда мне нужно отправить JSON через динамический порт отправки. По этой причине я создал почтовый конвейер с кодировщиком JSON с опцией Remove Outer Envelope = true.BizTalk Json encoder и динамические порты
У меня есть конвейер, связанный с моим динамическим портом, и на конвейере есть как XML-ассемблер, так и Json-кодер (я также пробовал без ассемблера xml, и результат был таким же).
Мои построить форму для сообщения запроса имеет следующий код:
varXml.LoadXml(
"<ns0:DataMigrationRequest xmlns:ns0=\"http://temp">"+
"<ns0:DataSets>Local Products</ns0:DataSets>"+
"<ns0:Country>Spain</ns0:Country>"+
"</ns0:DataMigrationRequest>"
);
msgRequest = varXml;
msgRequest(WCF.SuppressMessageBodyForHttpVerbs)="POST";
msgRequest(WCF.TransportClientCredentialType) = "None";
msgRequest(WCF.AlgorithmSuite) = "Default";
msgRequest(WCF.SecurityMode)="Transport";
msgRequest(WCF.HttpMethodAndUrl)[email protected]"POST";
msgRequest(BTS.IsDynamicSend) = true;
msgRequest(WCF.BindingType)="customBinding";
msgRequest(WCF.Action)="";
msgRequest(WCF.BindingConfiguration)[email protected]"<binding name=""customBinding""><httpsTransport /></binding>";
msgRequest(WCF.EndpointBehaviorConfiguration) = @"
<behavior name=""customBehavior"">
<CustomBehavior />
</behavior>";
Dynamic_Port(Microsoft.XLANGs.BaseTypes.Address) = System.String.Format("https://localhost/temp");
Dynamic_Port(Microsoft.XLANGs.BaseTypes.TransportType)="WCF-Custom";
Каждый раз, когда я пытаюсь отправить сообщение, я получаю ошибку:
Error details: System.Xml.XmlException: Data at the root level is invalid.
Если я заменил динамический порт по статическому порту все работает, и я могу отправить сообщение, как ожидалось. Это просто не работает, я отправляю динамику.
Уверены, что чего-то не хватает, у кого-нибудь есть подсказки, которые могли бы помочь?
Какая версия BizTalk? – Dijkgraaf
Также вы пробовали его только с помощью ассемблера XML в конвейере? Если это то, что бросает ошибку, то это проблема с этим. – Dijkgraaf
Версия BizTalk 2013 R2. Только с XML-ассемблером у меня нет никаких проблем. – Ricardo