【问题标题】:BizTalk Dynamic WCF-WSHttp Send Port reverting to Http AdapterBizTalk 动态 WCF-WSHttp 发送端口恢复为 Http 适配器
【发布时间】:2009-03-05 21:38:33
【问题描述】:

我正在尝试使用动态向 WCF-WSHttp 适配器发送消息 从业务流程发送端口,但 BizTalk 似乎总是 恢复到 HTTP 适配器。

根据我能够找到的文档,我应该只需要 从我的表达式形状设置传输类型以获取 BizTalk 使用 WCF-WSHttp 适配器,我是,但它似乎仍然是 还原。下面是我正在设置的表情形状的示例 属性(如您所见,我都尝试过 Microsoft.XLANGs.BaseTypes.TransportType 和 BTS.OutboundTransportType):

Body(BTS.OutboundTransportType) = "WCF-WSHttp";

SendMessagePort(Microsoft.XLANGs.BaseTypes.Address) =
System.String.Format("{0}/Accept{1}", "http://myserver/myservice/
myservice.svc/Accept{0}", messageInfo.MessageType);
SendMessagePort(Microsoft.XLANGs.BaseTypes.TransportType) = "WCF-
WSHttp";

【问题讨论】:

    标签: wcf biztalk


    【解决方案1】:

    可能是克雷格 :-)

    当使用动态发送端口时,BizTalk 使用 url 的“方案”部分来决定使用哪个适配器。

    当您的网址以“Http://”或“Https://”开头时,BizTalk 将始终使用 HTTP 适配器。 同样,以 ftp:// 开头的 url 将使用 FTP 适配器。 同样适用于自定义适配器 - 当您安装适配器的配置时,您注册要使用的名字对象;例如 - 开源计划任务适配器使用 schedule://(我相信)。

    将动态发送端口与 WCF 一起使用比大多数其他适配器稍微复杂一些,因为需要进行各种配置,但您可以找到详细说明 here,只需向下滚动到大约一半的“动态发送端口”部分。

    【讨论】:

    • Yossi -- 感谢您的回答。抱歉,我忘记更新这个问题了。我最终解决了我的问题,但我仍然不确定为什么会这样。我在端口上设置 TransportType 的表达式形状位于原子范围内。将其移出范围会修复问题。
    【解决方案2】:

    我最终解决了我的问题,但仍然不确定我看到的行为的原因。

    问题中提到的表达式形状位于原子范围内。一旦业务流程退出包含表达式形状的范围,传输类型就会重置回其原始值。将表达式移出原子范围解决了这个问题,因为 TransportType 设置正确。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-16
      • 1970-01-01
      • 2012-11-02
      相关资源
      最近更新 更多