使用到 Oracle 数据库的端口绑定文件配置物理端口绑定

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

重要

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

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

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

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

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

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

    重要

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

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

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

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

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

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

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

    对于此项 操作
    编辑端口绑定文件以配置单向发送端口 - 在以下摘录中,将 IsTwoWay 属性的值更改为 false。 最初,这设置为 true。

    <SendPort Name="port_name" IsStatic="true" IsTwoWay="false" BindingOption="0">

    - 注释掉以下摘录:

    <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" />
    编辑端口绑定文件以配置单向接收端口 - 在以下摘录中,将 IsTwoWay 属性的值更改为 false。 最初,这设置为 true。

    <ReceivePort Name="port_name" IsTwoWay="false" BindingOption="1">

    - 注释掉以下摘录:

    <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-OracleDB 端口

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

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

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

  3. 搜索“ConfigurationClsid”属性,并将属性的现有值替换为“D7127586-E851-412e-8A8A-2428AEDDC219”。

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

  5. 在 BizTalk Server 管理控制台中导入绑定文件。 有关如何导入绑定文件的说明,请参阅 重用 Oracle 数据库适配器绑定

另请参阅

使用 Oracle 数据库开发 BizTalk 应用程序的构建基块