Ошибка, возникающая в компоненте Microsoft Biztalk Intertop, при отправке документов с использованием многокорневой схемы - PullRequest
0 голосов
/ 21 февраля 2019

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

StackTrace: в Microsoft.BizTalk.Component.Interop.DocumentSpec.get_TypeMetadata ()
в Microsoft.BizTalk.Component.Interop.DocumentSpec.get_DocType ()
в Microsoft.BizTalk.Component.MsgTypeSchema..ctor (IPipelineContext pipelineContext, схема SchemaList envSpecName, SchemaList docSpecName) в Microsoft.BizTalk.Кодировка, Boolean saveEnvelopes, Boolean allowUnrecognizedMessage, Boolean validateDocument, SchemaList envelopeSpecNames SchemaList, SchemaList documentSpecNames, IFFDocumentSpec docSpecType, S

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

Чтобы дать вам представление о том, как выглядит схема в Visual Studio:

enter image description here

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

Я попытался повторно развернуть карты и схемы, перезапустить экземпляры хоста и удалить / добавить целевое пространство имен, пока ничего не получалось.В BizTalk есть несколько схем с тем же корневым узлом, но с другим целевым пространством имен.Я не уверен, что это может вызвать проблемы.

1 Ответ

0 голосов
/ 21 февраля 2019

Нажмите на схему, и в окне «Свойства» найдите элемент с именем Root Reference и установите для него корневой элемент

Root Reference item property

Если онииметь разные пространства имен, тогда никакие из них не вызовут проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...