Virtualize 还允许映射数据源中的分层数据结构。

例如,假设您正在为一个搜索操作创建一个消息响应器,作为书店服务的一部分。返回的每本书都有一个复杂的 XML 结构,可以返回不同数量的书(取决于搜索条件)。为了支持这一点,我们需要一个“数组数据源”,它可以用来构造动态分层响应。

设置数据源

您可以这样设置数据源:

  1. 创建一个包含3张表格(命名为关键字、书籍和作者)的 Excel 电子表格。
  2. 如下填写关键词表。



    注意图书 dsref* 列。这就是我们如何表示书的关键字将来自书单。(dsref* 表示 Data Source REFerence。)
  3. 如下填写关键词表。



    再次注意作者 dsref* 列。还要注意 ParentIndex 列。ParentIndex 列的值指示图书与哪个关键字相关。例如,本工作表中列出的两本 Java 书籍都有 Java 关键字。
  4. 填写作者表。



    再次注意 ParentIndex 列。注意,Harvey M. Deitel 和 Paul J. Deitel 都有相同的 ParentIndex,因为他们是 How to Program in Java (4th Edition)的合著者。David Flanagan 将与他的著作联系起来:Java in a Nutshell, Fourth Edition

参数化表单输入

接下来,让我们研究如何在 XML 中使用这些关联。为了指定响应的 author 组件,我们将表单输入参数化如下:

  1. 创建一个新的名为 ArrayDataSource.pva的 .pva。
  2. 添加一个指向前面步骤中创建的 Excel 电子表格的 Excel 数据源。选择关键字作为工作表。
  3. 创建新的消息响应程序。
  4. 将消息响应程序的 WSDL URL 设置为 http://soatest.parasoft.com/store-01.wsdl
  5. 设置表单输入,如下所示:
    1. authors下,清除 Nill,然后单击 Edit
    2. 选择 Fixed,单击 Insert,然后单击 Modify
    3. 选择 Parameterized books: authors:author

然后,您将继续以这种方式配置响应,以构造您想要使用的动态分层响应。

  • No labels