步骤 1:修改 Oracle 数据库中的 vPrev BizTalk 项目

第 1 步(共 3

完成时间: 10 分钟

目的: 在此步骤中,对现有 vPrev BizTalk 项目进行以下更改:

  • 为 SCOTT 上的插入操作生成元数据。使用基于 WCF 的 Oracle 数据库适配器的 CUSTOMER 表。

  • 将用于使用 vPrev Oracle 数据库适配器执行 Insert 操作的请求消息映射到使用基于 WCF 的 Oracle 数据库适配器执行 Insert 操作的请求消息。

  • 使用基于 WCF 的 Oracle 数据库适配器收到的响应消息映射到 vPrev Oracle 数据库适配器的响应消息。

必备条件

  • 必须具有 vPrev BizTalk 项目才能在 SCOTT 上执行插入操作。Oracle 数据库中的 CUSTOMER 表。

修改 vPrev BizTalk 项目

  1. 为 SCOTT 上的插入操作生成元数据。使用基于 WCF 的 Oracle 数据库适配器的 CUSTOMER 表。 可以使用使用适配器服务 BizTalk 项目外接程序来生成元数据。

    有关如何生成元数据的说明,请参阅 在 Visual Studio 中获取 Oracle Database 操作的元数据。 生成架构后,会将名称类似于 OracleDBBindingSchema.xsd 的文件添加到 BizTalk 项目中。 此文件包含用于发送消息以在 SCOTT 上执行插入操作的架构。使用基于 WCF 的 Oracle 数据库适配器的 Oracle 数据库中的 CUSTOMER 表。

  2. 生成插入操作的元数据还会创建端口绑定文件。 在下一步中,此绑定文件将用于创建 WCF-Custom 发送端口,以便将消息发送到 Oracle 数据库。 操作的 SOAP 操作也设置为为其生成元数据的操作。 例如,如果为 Insert 操作生成元数据,则发送端口上的 SOAP 操作中的操作名称将为“Insert”。 但是,作为业务流程的一部分创建的逻辑发送端口上的操作名称可能不同,例如“Operation_1”。 因此,使用发送端口将消息发送到 Oracle 数据库时,会收到错误。 若要防止出现这种情况,请确保业务流程中逻辑发送端口上的操作名称与为其生成元数据的操作名称相同。

    因此,在本教程中,由于为插入操作生成元数据,因此请将逻辑发送端口操作的名称更改为“Insert”。

  3. 对于请求消息,请将使用 vPrev Oracle 数据库适配器生成的架构映射到使用基于 WCF 的 Oracle 数据库适配器生成的架构。

    1. 将 BizTalk 映射器添加到 BizTalk 项目。 右键单击 BizTalk 项目,指向 “添加”,然后单击“ 新建项”。

      “添加新项 ”对话框中的左窗格中,选择“ 映射文件”。 在右窗格中,选择“ 映射”。 指定映射的名称,例如 RequestMap.btm。 单击“添加”。

    2. 在“源架构”窗格中,单击“ 开放源代码架构”。

    3. “BizTalk 类型选取器 ”对话框中,展开项目名称,展开 “架构”,然后选择 vPrev Oracle 数据库适配器的请求消息的架构。 对于本教程,请选择 “Oracle_Migration.CUSTOMERService_CUSTOMER_x5d”。 单击 “确定”

    4. 在“ 源架构的根节点 ”对话框中,选择“ 插入 ”并单击“ 确定”。

    5. 在“目标架构”窗格中,单击“ 打开目标架构”。

    6. “BizTalk 类型选取器 ”对话框中,展开项目名称,展开 “架构”,然后选择基于 WCF 的 Oracle 数据库适配器的请求消息的架构。 对于本教程,请选择“ Oracle_Migration.OracleDBBindingSchema”。 单击 “确定”

    7. 在“ 目标架构的根节点 ”对话框中,选择“ 插入 ”并单击“ 确定”。

    8. 映射这两个架构中的相应元素,如下图所示。

      映射发送到 Oracle 数据库 的请求

    9. 保存该映射。

  4. 对于响应消息,请将使用 vPrev Oracle 数据库适配器生成的架构映射到使用基于 WCF 的 Oracle 数据库适配器生成的架构。

    1. 将 BizTalk 映射器添加到 BizTalk 项目。 右键单击 BizTalk 项目,指向 “添加”,然后单击“ 新建项”。

      “添加新项 ”对话框中的左窗格中,选择“ 映射文件”。 在右窗格中,选择“ 映射”。 指定映射的名称,例如 ResponseMap.btm。 单击“添加”。

    2. 在“源架构”窗格中,单击“ 开放源代码架构”。

    3. “BizTalk 类型选取器 ”对话框中,展开项目名称,展开 “架构”,并为基于 WCF 的 Oracle 数据库适配器的响应消息选择架构。 对于本教程,请选择“ Oracle_Migration.OracleDBBindingSchema”。 单击 “确定”

    4. 在“ 源架构的根节点 ”对话框中,选择“插入”“ 响应 ”并单击“ 确定”。

    5. 在“目标架构”窗格中,单击“ 打开目标架构”。

    6. “BizTalk 类型选取器 ”对话框中,展开项目名称,展开 “架构”,然后选择 vPrev Oracle 数据库适配器响应消息的架构。 对于本教程,请选择 “Oracle_Migration.CUSTOMERService_CUSTOMER_x5d”。 单击 “确定”

    7. 在“ 目标架构的根节点 ”对话框中,选择“ InsertResponse”,然后单击“ 确定”。

    8. 你会注意到,符合基于 WCF 的 Oracle 数据库适配器的响应消息的架构包含一个附加 的 InsertResult 元素。 必须将其从架构中删除,并在两个架构中映射 InsertResponse 元素。

      为此,请从 “工具箱”中拖动 “左侧剪裁字符串 ”functoid 并将其拖放到映射器网格上。 将源架构中的 InsertResponse 元素连接到 functoid。 同样,将目标架构中的 InsertResponse 元素连接到 functoid。 下图演示了如何通过 functoid 映射这两个元素。

      映射从 Oracle 数据库 收到的响应

      注意

      有关详细信息,请参阅 UI 指南和开发人员 API 命名空间参考中的 String Left Trim Functoid

    9. 保存该映射。

  5. 保存并生成 BizTalk 解决方案。 右键单击解决方案,然后单击“ 生成解决方案”。

  6. 部署该解决方案。 右键单击解决方案,然后单击“ 部署解决方案”。

后续步骤

创建 WCF 自定义发送端口并将其配置为使用在此步骤中创建的映射,如 步骤 2:使用 SQL 适配器在 Biztalk Server 管理控制台中配置业务流程中所述。

另请参阅

教程:迁移 BizTalk 项目