用于不合格服务的BizTalk WCF适配器

时间:2013-04-19 12:57:15

标签: biztalk biztalk-2010 biztalk-wcf

我目前需要配置动态发送端口以连接不符合WS-I Basic Profile v1.1的ASMX Web服务。具体来说,R9981,声明“一个信封必须正好有零或一个子元素的肥皂:Body元素。”我正在消耗的Web服务期望一个具有多个元素的主体,从而导致SOAP身体看起来像:

<Body>
    <FirstElement />
    <SecondElement />
</Body>

我尝试过使用WCF-BasicHttp和WCF-Custom适配器都没有成功。似乎BizTalk WCF适配器无法处理具有多个元素的SOAP主体。

在接收位置,我使用模板将消息包装在一个元素下,以解决通过BizTalk传递的消息的问题,我想我可以使用自定义发送管道/自定义组件简单地拦截消息以去除包装元件。然后我尝试使用消息检查器进行自定义行为扩展,但这仍然发生在BizTalk的WCF“BizTalkBodyWriter”工作之前。

当我使用ESB 2.1工具包时,我无法使用HTTP适配器从头开始创建SOAP消息。我最后的想法是我需要创建一个自定义的WCF LOB适配器,但在我走这条路之前,我想确保我不会在这里过度复杂,并且我不会轻易忽略一些简单的方法。 / p>

1 个答案:

答案 0 :(得分:1)

解决方案是创建自定义消息编码器。我按照WCF Interoperability and Extensibility - Part One作为指导。