zoukankan      html  css  js  c++  java
  • BizTalk: Difference between (PassThruReceive, PassThruSend) and (XmlReceive, XmlSend) Biztalk Pipelines (For Beginners)

    Difference between (PassThruReceive, PassThruSend) and (XmlReceive, XmlSend) Biztalk Pipelines (For Beginners), by Saravana Kumar

    This article presents the difference between (PassThruReceive, PassThruSend) and (XmlReceive, XmlSend) Biztalk Pipelines for new BizTalk comers.
    http://www.digitaldeposit.net/blog/2007/01/difference-between-passthrureceive.html

    ***
    ...................................................................
    Why do we need a XmlReceive pipeline:
    As discussed earlier the only additional component in the XmlReceive pipeline when compared to PassThruReceive pipeline is the addition of XmlDisassembler pipeline component on the disassembling stage. Whenever an Xml message is received via the XmlReceive pipeline the XmlDisassembler will do the following tasks:

    1.Promote the "MessageType" context property by taking the combination of TargetNamespace and Rootelement in the format, Targetnamespace#RootElement.
    2. Remove Envelopes and disassemble the interchanges
    3. Promote the content properties from interchange and individual document into message context based on the confirured distingushed fields and promoted properties.

    See the link for detailed explanation of XmlDisassembler (http://msdn2.microsoft.com/en-us/library/ms964545.aspx).

    There are 3 important things you need to keep in mind.

    1. Maps on the receive side will be applied after the receive pipeline. In order to pick the correct schemas for processing, Maps need the "MessageType" property, which is promoted by the XmlDisassembler. So, if you are using PassThruReceive "MessageType" property won't be present, which in turn will result in Map not being applied.

    2. Binding of logical port (Activation port) in the orchestration to a message (inside the orchestration designer), and deploying/enlisting the orchestration will create the subscription for the particular message type. So, if you are using PassThruReceive "MessageType" property won't be present, which in turn will result in not starting the particular Orchestration instance.

    3. If you have configured content based routing based on the properties in the message (Filters in SendPorts, Example: BTS.MessageType = http://tempuri#Person), routing won't happen until the correct properties are present in the message context.



     

  • 相关阅读:
    认识弹性盒子
    管理Linux服务器的用户和组(续篇)
    管理Linux服务器的用户和组
    centos7 mysql数据库安装和配置
    熟练使用Linux进程管理类命令
    熟练使用Linux系统信息类命令
    Linux操作系统-基本命令(二)
    Linux操作系统-基本命令(一)
    api接口统一封装
    10分钟,让你彻底明白Promise原理
  • 原文地址:https://www.cnblogs.com/rickie/p/716244.html
Copyright © 2011-2022 走看看