使用到 SAP 的端口绑定文件配置物理端口绑定

使用适配器服务 BizTalk 项目外接程序为 SAP 项目生成元数据时,除架构文件外,使用适配器服务外接程序还会生成端口绑定文件。 可以将此绑定文件导入 BizTalk 应用程序,以创建物理发送或接收端口。 重用 SAP 适配器绑定 包括导入绑定文件的步骤。 如果导入此绑定文件,则无需手动创建物理发送或接收端口。

重要

使用“使用适配器服务加载项”时,如果未为字符串类型的绑定属性指定值,并且其默认值为 null,则该绑定属性在绑定文件中将不可用。 如果需要,必须在绑定文件中手动添加绑定属性及其值。

使用端口绑定文件创建端口始终会创建双向发送或接收端口。 如果要创建单向端口,可以使用手动 配置到 SAP 适配器的物理端口绑定中的步骤手动创建单向端口。 或者,可以按照本主题中所述的解决方法修改端口绑定文件以创建单向端口。

重要

使用添加适配器元数据向导不会创建可用于创建 WCF-SAP 端口的端口绑定文件。 但是,你可以对使用适配器服务加载项生成的端口绑定文件进行一些更改,并使用它来创建 WCF-SAP 端口。 有关详细信息,请参阅 使用使用适配器服务加载项生成的使用端口绑定文件配置 WCF-SAP 端口。

以下是有关使用适配器服务外接程序生成的绑定文件必须了解的一些要点:

  • 这些文件是使用特定命名约定创建的。 如果为出站操作(即将消息发送到 SAP 系统)生成了元数据,则文件名 WcfSendPort_SAPBinding_Custom.bindinginfo.xml。

    如果为入站操作(即从 SAP 系统接收消息)生成了元数据,则文件名 WcfReceivePort_SAPBinding_Custom.bindinginfo.xml。

  • 该文件包含有关绑定配置、绑定类型、终结点 URI 以及基于为其生成元数据的操作的端口操作的信息。 导入此绑定文件以创建端口时,将自动在端口上设置配置物理端口所需的所有相关信息。

    重要

    默认情况下,发送端口上的操作映射到为其生成元数据的操作名称。 例如,如果为 RFC_CUSTOMER_GET 生成元数据,则端口上的操作将设置为 <Operation Name="RFC_CUSTOMER_GET" Action="http://Microsoft.LobServices.Sap/2007/03/Rfc/RFC_CUSTOMER_GET " />。 但是,在 BizTalk 业务流程中创建的逻辑发送端口上的操作名称可能不同。 必须确保 BizTalk 业务流程) 逻辑端口 (的操作名称与 BizTalk Server 管理控制台) 中的物理发送端口 (相同。 否则,你将在通过发送端口向 SAP 系统发送消息时收到错误。

  • 只需提供端口的凭据即可连接到 SAP 系统。 虽然绑定文件会保留用于连接的用户名,但出于安全原因,绑定文件不包含密码。

使用端口绑定文件的主要注意事项

  • 导入绑定文件时,可能会收到一条对话框消息,通知绑定文件中的 BizTalk 应用程序名称与要导入绑定文件的应用程序名称不匹配。 可以放心地忽略此消息并继续操作。

  • 绑定文件还包含端口和接收位置的名称。 如果要将绑定文件导入到的 BizTalk 应用程序创建的端口或接收位置与同一 BizTalk 应用程序中已存在的端口同名,则会收到错误。 必须手动编辑绑定文件,以指定端口或接收位置的唯一名称。

  • 绑定文件还包含有关连接 URI 的信息。 如果绑定文件创建的接收位置与同一 BizTalk 应用程序中现有的接收位置具有相同的接收 URI,则会收到错误。 必须手动编辑绑定文件才能指定唯一 URI。

  • 默认情况下,端口绑定文件始终包含双向端口的定义, (发送或接收) 。 在 BizTalk 应用程序中导入此文件时,它会创建双向发送或接收端口。 但是,可能有一个业务流程具有单向发送或接收端口。 因此,配置此类业务流程并使用通过导入绑定文件创建的端口时,该端口在列表中不可用。 发生这种情况的原因是,作为业务流程的一部分创建的逻辑端口是单向端口,而在业务流程中创建的物理端口是双向端口。 在这种情况下,可以编辑绑定文件进行以下更改:

    对于此项 操作
    编辑端口绑定文件以配置单向发送端口 1. 在以下摘录中,将 IsTwoWay 属性的值更改为 false。 最初,这设置为 true
    <SendPort Name="port_name" IsStatic="true" IsTwoWay="false" BindingOption="0">
    2. 注释掉以下摘录:
    <ReceivePipeline Name="Microsoft.BizTalk.DefaultPipelines.XMLReceive" FullyQualifiedName="Microsoft.BizTalk.DefaultPipelines.XMLReceive, Microsoft.BizTalk.DefaultPipelines, Version=3.0.1.0, Culture=neutral, PublicKeyToken=token" Type="1" TrackingOption="None" Description=""/>
    <ReceivePipelineData xsi:nil="true" />
    编辑端口绑定文件以配置单向接收端口 1. 在以下摘录中,将 IsTwoWay 属性的值更改为 false。 最初,这设置为 true
    <ReceivePort Name="port_name" IsTwoWay="false" BindingOption="1">
    2. 注释掉以下摘录:
    <SendPipeline Name="Microsoft.BizTalk.DefaultPipelines.XMLTransmit" FullyQualifiedName="Microsoft.BizTalk.DefaultPipelines.XMLTransmit, Microsoft.BizTalk.DefaultPipelines, Version=3.0.1.0, Culture=neutral, PublicKeyToken=token" Type="2" TrackingOption="None" Description="" />
    <SendPipelineData xsi:nil="true" />
    <SendPipelineData xsi:nil="true" />

使用使用适配器服务加载项生成的端口绑定文件配置 WCF-SAP 端口

使用适配器服务加载项还会创建可在 BizTalk Server 管理控制台中导入的端口绑定文件。 还可以使用相同的端口绑定文件在 BizTalk Server 管理控制台中创建 BizTalk WCF-SAP 端口。 但是,在创建 WCF-SAP 端口之前,必须执行以下任务来修改端口绑定文件。

  1. 在文本编辑器中打开端口绑定文件。

  2. 搜索并将“WCF-Custom”替换为在 BizTalk Server 管理控制台中添加 WCF-SAP 适配器时使用的名称。 例如,如果将 WCF-SAP 适配器添加为“SAPAdapter”,请将“WCF-Custom”替换为“SAPAdapter”。

  3. 搜索“ConfigurationClsid”属性,并将属性的现有值替换为“A5F15999-8879-472d-8C62-3B5EA9406504”。

  4. 保存并关闭绑定文件。

  5. 在 BizTalk Server 管理控制台中导入绑定文件。 重用 SAP 适配器绑定 列出了步骤。

另请参阅

生成块以创建 SAP 应用程序