本文介绍了文档类型与任何给定的模式都不匹配的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

好的,我的公司是biztalk的新手,我们遇到了一些问题。我在biztalk中收到批处理消息并捕获一些头信息并将其插入到数据库中并接收插入的主键。接下来,我构造原始消息的副本,并将节点的值设置为返回的主键。接下来我需要分发消息,因此我将复制的消息转换为新的消息类型以进行debatching。然后,我从业务流程中调用接收管道,将消息解析为绑定到信封模式的单个消息。我们在Atomic范围内有这个,并为管道声明了一个局部变量和类型为envelope schema的本地消息。我们添加了适当的引用,并在表达式形状中使用以下代码行来调用管道。

Ok, my company is new to biztalk and we are having some issues.  I receive a batch message in biztalk and capture some of the header information and insert it into a db and receive back the inserted primary key.  Next I construct a copy of the original message and set the value of a node to the returned primary key.  Next I need to debatch the message, so I transform the copied message into a new message type for debatching.  I then call a receive pipeline from within my orchestration to parse apart the message into individual messages tied to an envelope schema.  We have this within an Atomic scope and have declared a local variable and local message of type envelope schema for the pipeline.  We have added the appropriate reference and have the following line of code in an expression shape to call the pipeline.

RcvPipeOutput = Microsoft.XLANGs.Pipeline.XLANGPipelineManager.ExecuteReceivePipeline(typeof(CriticalChangePipelines.DebatchCriticalChangeAttributes) ),CriticalChangeAttributesContainerMsg);

RcvPipeOutput = Microsoft.XLANGs.Pipeline.XLANGPipelineManager.ExecuteReceivePipeline(typeof(CriticalChangePipelines.DebatchCriticalChangeAttributes),CriticalChangeAttributesContainerMsg);

管道确实有正确的文档和信封集合集。我的问题是管道组件给出的文档类型错误与任何给定的模式都不匹配。下面是传递到管道中的容器模式,下面是信封模式。我们是否偶然不了解如何对邮件进行反批处理并搞砸我们的主机和信封模式?

The pipeline does have the proper document and envelope collection set.  My problem is that the pipeline component is giving an error of Document Type does not match any of the given schemas.  Below is the container schema that gets passed into the pipeline and below that is the envelope schema.  Have we by chance not understood how to de-batch a message and screwed up our host and envelope schemas?

<?xml version =" 1.0"编码= QUOT; UTF-16" ?>
- < xs:schema xmlns:b =" ">
- < xs:element name =" CriticalChangeAttributes">
- < xs:annotation>
- < xs:appinfo>
< b:recordInfo rootTypeName =" CriticalChangeAttributes" xmlns:b =" " />
< / xs:appinfo>
< / xs:annotation>
- < xs:complexType>
- < xs:sequence>
< xs:element name = "&的AttributeName QUOT;类型= QUOT; XS:串QUOT; />
< xs:element name =" AttributeOldValue"类型= QUOT; XS:串QUOT; />
< xs:element name =" AttributeNewValue"类型= QUOT; XS:串QUOT; />
< xs:element name =" CreatedBy"类型= QUOT; XS:串QUOT; />
< xs:element name =" CriticalChangeId"类型= QUOT; XS:INT" />
< / xs:sequence>
< / xs:complexType>
< / xs:element>
< / xs:schema>

  <?xml version="1.0" encoding="utf-16" ?>
- <xs:schema xmlns:b="http://schemas.microsoft.com/BizTalk/2003" xmlns="Graebel.Schemas.CriticalChange.CriticalChangeAttributeDocument" targetNamespace="Graebel.Schemas.CriticalChange.CriticalChangeAttributeDocument" xmlns:xs="http://www.w3.org/2001/XMLSchema">
- <xs:element name="CriticalChangeAttributes">
- <xs:annotation>
- <xs:appinfo>
  <b:recordInfo rootTypeName="CriticalChangeAttributes" xmlns:b="http://schemas.microsoft.com/BizTalk/2003" />
  </xs:appinfo>
  </xs:annotation>
- <xs:complexType>
- <xs:sequence>
  <xs:element name="AttributeName" type="xs:string" />
  <xs:element name="AttributeOldValue" type="xs:string" />
  <xs:element name="AttributeNewValue" type="xs:string" />
  <xs:element name="CreatedBy" type="xs:string" />
  <xs:element name="CriticalChangeId" type="xs:int" />
  </xs:sequence>
  </xs:complexType>
  </xs:element>
  </xs:schema>

这是信封模式:

<?xml version =" 1.0"编码= QUOT; UTF-16" ?>
- < xs:schema xmlns:ns0 =" Graebel.Schemas.CriticalChange.CriticalChangeAttributeDocument" xmlns:b =" " xmlns =" " xmlns:ns1 =" " targetNamespace =" " xmlns:xs =" ">
< xs:import schemaLocation ="。\criticalchangeattributesdocument.xsd"命名空间= QUOT; Graebel.Schemas.CriticalChange.CriticalChangeAttributeDocument" />
- < xs:annotation>
- < xs:appinfo>
< b:schemaInfo is_envelope =" yes" xmlns:b =" " />
- < b:imports>
< b:namespace prefix =" ns1" uri =" "位置= QUOT; .\propertyschema.xsd" />
< / b:imports>
- < b:references>
< b:reference targetNamespace =" Graebel.Schemas.CriticalChange.CriticalChangeAttributeDocument" />
< / b:references>
< / xs:appinfo>
< / xs:annotation>
- < xs:element name =" CriticalChangeIndividualAttribute">
- < xs:annotation>
- < xs:appinfo>
< b:recordInfo body_xpath =" / * [local-name()='CriticalChangeIndividualAttribute'和namespace-uri()='http ://CriticalChangeSchemas.CriticalChangeAttributeDocumentEnvelope']" />
- < b:properties>
< b:property name =" ns1:CriticalChangeId" xpath =" / * [local-name()='CriticalChangeIndividualAttribute'和namespace-uri()='http://CriticalChangeSchemas.CriticalChangeAttributeDocumentEnvelope'] / * [local-name()='CriticalChangeAttributes'和namespace-uri( )='Graebel.Schemas.CriticalChange.CriticalChangeAttributeDocument'] / * [local-name()='CriticalChangeId'和namespace-uri()='']" />
< / b:properties>
< / xs:appinfo>
< / xs:annotation>
- < xs:complexType>
- < xs:sequence>
< xs:element ref =" ns0:CriticalChangeAttributes" />
< / xs:sequence>
< / xs:complexType>
< / xs:element>
< / xs:schema>

<?xml version="1.0" encoding="utf-16" ?>
- <xs:schema xmlns:ns0="Graebel.Schemas.CriticalChange.CriticalChangeAttributeDocument" xmlns:b="http://schemas.microsoft.com/BizTalk/2003" xmlns="http://CriticalChangeSchemas.CriticalChangeAttributeDocumentEnvelope" xmlns:ns1="http://CriticalChangeSchemas.PropertySchema.PropertySchema" targetNamespace="http://CriticalChangeSchemas.CriticalChangeAttributeDocumentEnvelope" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation=".\criticalchangeattributesdocument.xsd" namespace="Graebel.Schemas.CriticalChange.CriticalChangeAttributeDocument" />
- <xs:annotation>
- <xs:appinfo>
  <b:schemaInfo is_envelope="yes" xmlns:b="http://schemas.microsoft.com/BizTalk/2003" />
- <b:imports>
  <b:namespace prefix="ns1" uri="http://CriticalChangeSchemas.PropertySchema.PropertySchema" location=".\propertyschema.xsd" />
  </b:imports>
- <b:references>
  <b:reference targetNamespace="Graebel.Schemas.CriticalChange.CriticalChangeAttributeDocument" />
  </b:references>
  </xs:appinfo>
  </xs:annotation>
- <xs:element name="CriticalChangeIndividualAttribute">
- <xs:annotation>
- <xs:appinfo>
  <b:recordInfo body_xpath="/*[local-name()='CriticalChangeIndividualAttribute' and namespace-uri()='http://CriticalChangeSchemas.CriticalChangeAttributeDocumentEnvelope']" />
- <b:properties>
  <b:property name="ns1:CriticalChangeId" xpath="/*[local-name()='CriticalChangeIndividualAttribute' and namespace-uri()='http://CriticalChangeSchemas.CriticalChangeAttributeDocumentEnvelope']/*[local-name()='CriticalChangeAttributes' and namespace-uri()='Graebel.Schemas.CriticalChange.CriticalChangeAttributeDocument']/*[local-name()='CriticalChangeId' and namespace-uri()='']" />
  </b:properties>
  </xs:appinfo>
  </xs:annotation>
- <xs:complexType>
- <xs:sequence>
  <xs:element ref="ns0:CriticalChangeAttributes" />
  </xs:sequence>
  </xs:complexType>
  </xs:element>
  </xs:schema>

推荐答案


这篇关于文档类型与任何给定的模式都不匹配的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-13 07:25