2.3. 在合同中添加数据单元

概述

根据您选择创建 WSDL 合同的方式,创建新的数据定义需要不同的知识。Apache CXF GUI 工具提供了多个有助于描述使用 XML 架构的数据类型。其他 XML 编辑器提供了不同级别的帮助。无论您选择的编辑器如何,最好了解生成的合同应该是什么样的。

流程

定义 WSDL 合同中使用的数据涉及以下步骤:

  1. 确定合同中描述的接口中使用的所有数据单元。
  2. 在您的合同中创建 类型 元素。
  3. 创建一个 schema 元素,如 例 2.1 “WSDL 合同的架构条目”,作为 type 元素的子级。

    targetNamespace 属性指定定义新数据类型的命名空间。最佳实践也是定义提供目标命名空间访问权限的命名空间。不应更改剩余的条目。

    例 2.1. WSDL 合同的架构条目

    <schema targetNamespace="http://schemas.iona.com/bank.idl"
            xmlns="http://www.w3.org/2001/XMLSchema"
            xmlns:xsd1="http://schemas.iona.com/bank.idl"
            xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  4. 对于作为元素集合的每个复杂类型,使用 complexType 元素定义数据类型。请参阅 第 2.5.1 节 “定义数据结构”
  5. 对于每个数组,使用 complexType 元素定义数据类型。请参阅 第 2.5.2 节 “定义数组”
  6. 对于从简单类型派生的每种复杂类型,请使用 simpleType 元素定义数据类型。请参阅 第 2.5.4 节 “根据限制定义类型”
  7. 对于每个枚举的类型,使用 simpleType 元素定义数据类型。请参阅 第 2.5.5 节 “定义枚举的类型”
  8. 对于每个元素,使用 element 元素 进行定义。请参阅 第 2.6 节 “定义元素”